第一个: finally中的代码会执行吗?
package com.jbbis.test;
public class Test {
public static void main(String[] args) {
try {
//return; finally中代码在return前执行
//System.exit(0); finally中的代码不执行
//System.exit(10); finally中的代码不执行
//(System.exit(非0)都是不执行的 ^_^)
} catch (Exception e) {
// TODO: handle exception
} finally {
System.out.println("i love u");
}
}
}
第二个:final的值改变了?
package com.jbbis.test;
class Car {
public final String temp;
/**
* 如果是:1) public static final String temp;
* 2) pubblic final String temp = null 或 ""
* 下面的代码会报错的 ^_^
*
* 注意:如果不是的话下面的代码是对的
*/
public final int i ;
public Car(String s,int j) {
temp = s;
i = j;
}
}
public class Test {
public static float te;
public static void main(String[] args) {
Car car = new Car("i love u" ,1);
System.out.println(car.temp + "***" + car.i);
car = new Car("me too" ,2);
System.out.println(car.temp + "***" + car.i);
System.out.println(te);
}
}
第三个:单态模式
/**
* 这是一个简单的恶汉式单态模式
*/
class Single {
private static final Single single = new Single();
private Single() {
}
public static Single getInstance() {
return single;
}
public void sayHello() {
System.out.println("i love u sayHello() ..........");
}
}
class Car {
public Car() {
}
int i = 0;
public void run(String temp) {
System.out.println("汽车跑起来了......" + i++ + "....." + temp);
}
}
public class SingleTest {
public SingleTest() {
}
public static void main(String[] args) {
// 第一段
Single single = Single.getInstance();
single.sayHello();
// 此处虽然表面上是重新得到一个对象,但是实际上是一个对象
Single single1 = Single.getInstance();
if (single == single1) {
System.out.println("single============");
}
if (single.equals(single1)) {
System.out.println"equals...single.........");
}
// 第二段
Car car = new Car();
car.run("car");
Car car1 = new Car();
car1.run("car1");
// 因为不是单态的并且都是重新new出来的,所以这时两个对象是不相等的
if (car == car1) {
System.out.println("Car 1 ==");
}
if (car.equals(car1)) {
System.out.println("equals...Car 1 ....");
}
// 第三段
// 这个是给一个对象赋值,所以对象是相等的 ^_^
Car car2 = car;
car2.run("car2");
if (car == car2) {
System.out.println("Car 2============");
}
if (car.equals(car2)) {
System.out.println("equals...Car 2....");
}
}
}
package com.jbbis.test;
public class Test {
public static void main(String[] args) {
try {
//return; finally中代码在return前执行
//System.exit(0); finally中的代码不执行
//System.exit(10); finally中的代码不执行
//(System.exit(非0)都是不执行的 ^_^)
} catch (Exception e) {
// TODO: handle exception
} finally {
System.out.println("i love u");
}
}
}
第二个:final的值改变了?
package com.jbbis.test;
class Car {
public final String temp;
/**
* 如果是:1) public static final String temp;
* 2) pubblic final String temp = null 或 ""
* 下面的代码会报错的 ^_^
*
* 注意:如果不是的话下面的代码是对的
*/
public final int i ;
public Car(String s,int j) {
temp = s;
i = j;
}
}
public class Test {
public static float te;
public static void main(String[] args) {
Car car = new Car("i love u" ,1);
System.out.println(car.temp + "***" + car.i);
car = new Car("me too" ,2);
System.out.println(car.temp + "***" + car.i);
System.out.println(te);
}
}
第三个:单态模式
/**
* 这是一个简单的恶汉式单态模式
*/
class Single {
private static final Single single = new Single();
private Single() {
}
public static Single getInstance() {
return single;
}
public void sayHello() {
System.out.println("i love u sayHello() ..........");
}
}
class Car {
public Car() {
}
int i = 0;
public void run(String temp) {
System.out.println("汽车跑起来了......" + i++ + "....." + temp);
}
}
public class SingleTest {
public SingleTest() {
}
public static void main(String[] args) {
// 第一段
Single single = Single.getInstance();
single.sayHello();
// 此处虽然表面上是重新得到一个对象,但是实际上是一个对象
Single single1 = Single.getInstance();
if (single == single1) {
System.out.println("single============");
}
if (single.equals(single1)) {
System.out.println"equals...single.........");
}
// 第二段
Car car = new Car();
car.run("car");
Car car1 = new Car();
car1.run("car1");
// 因为不是单态的并且都是重新new出来的,所以这时两个对象是不相等的
if (car == car1) {
System.out.println("Car 1 ==");
}
if (car.equals(car1)) {
System.out.println("equals...Car 1 ....");
}
// 第三段
// 这个是给一个对象赋值,所以对象是相等的 ^_^
Car car2 = car;
car2.run("car2");
if (car == car2) {
System.out.println("Car 2============");
}
if (car.equals(car2)) {
System.out.println("equals...Car 2....");
}
}
}

被折叠的 条评论
为什么被折叠?



