20190119——随手纪念3

方法重载:方法名称相同,参数列表不同(可以是参数的类型,个数,顺序不同)


一个.java文件中,可以有多个类,包括内部类和外部类。考虑到内部类的原因,一个.java文件可以中可以有多个public类。 但是对于外部类而言,一个.java文件必须只能有一个public类,同时这个类的类名必须和.java的文件名一致(包括大小写)。
字符串在编译过程中,1234和welcome都被编译到了常量池中,在调用changeStr(str)的过程中,首先将,str的引用传递给了changeStr(保存在在栈里),然后在这里面更改str的值,相当于在栈中将传递给changeStr的引用的值变化了,但是当changeStr结束之后,栈就清空了,因此原来的引用并没有发生变化。 public class demo1 { public static void main(String[] args) { String str ="1234"; changeString(str); System.out.println(str); } public static void changeString(String str){ str="welcome"; } }

在这里插入图片描述


整数类型 默认为 int 带小数的默认为 double
构造方法不能被static、final、synchronized、abstract、native修饰,但可以被public、private、protected修饰
构造方法也不能被继承 因为构造方法的名字与类名相同,怎么继承
Java 类执行顺序:

父类的静态变量和静态块赋值(按照声明顺序)
自身的静态变量和静态块赋值(按照声明顺序)
父类成员变量和块赋值(按照声明顺序)
父类构造器赋值
自身成员变量和块赋值(按照声明顺序)
自身构造器赋值


为什么是public:因为接口必然是要被实现的,如果不是public,这个属性就没有意义了; 为什么是static:因为如果不是static,那么由于每个类可以继承多个接口,那就会出现重名的情况; 为什么是final:这是为了体现java的开闭原则,因为接口是一种模板,既然是模板,那就对修改关闭,对扩展开放。
执行顺序:

抛出异常后,执行catch块,在catch块的return的–i执行完后,并不直接返回而是执行finally,因finally中有return语句,所以,执行,返回结果6。

结论:

try块中抛出异常,try、catch和finally中都有return语句,返回值是finally中的return。

总体结论:

结论一:

return语句并不是函数的最终出口,如果有finally语句,这在return之后还会执行finally(return的值会暂存在栈里面,等待finally执行后再返回)
结论二:

finally里面不建议放return语句,根据需要,return语句可以放在try和catch里面和函数的最后。可行的做法有四:
(1)return语句只在函数最后出现一次。
(2)return语句仅在try和catch里面都出现。
(3)return语句仅在try和函数的最后都出现。
(4)return语句仅在catch和函数的最后都出现。
注意,除此之外的其他做法都是不可行的,编译器会报错


成员变量有初始值,而局部变量没有初始值
抛InterruptedException的代表方法有:

java.lang.Object 类的 wait 方法

java.lang.Thread 类的 sleep 方法

java.lang.Thread 类的 join 方法


静态语句块中x为局部变量,不影响静态变量x的值
也就是说数组命名时名称与[]可以随意排列,但声明的二维数组中第一个中括号中必须要有值,它代表的是在该二维数组中有多少个一维数组。
final与abstract只能有一个
ArrayList是基于数组实现的,所以查询快,增删慢;LinkedList是基于链表实现的,所以查找慢,增删快。
Stack是栈, queue是对列; 栈是后进先出,对列是先进先出;
堆区:只存放类对象,线程共享; 方法区:又叫静态存储区,存放class文件和静态数据,线程共享; 栈区:存放方法局部变量,基本类型变量区、执行环境上下文、操作指令区,线程不共享;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值