类,对象,封装,重载,重写,继承,父类,子类,super,this
https://github.com/dongmingchao/JavaPTA/blob/master/src/three/Rational.java
ps:范例中的代码有错,声明返回类型是Rational但是却没有返回结果,以及等等。。
面向过程的编程对于语句前后的顺序有要求,面向对象编程对此要求很少,且更工程化,更模块化,易于理解和维护
特征:不需要声明返回值类型
作用:初始化一个类型,预处理操作
有,默认存在无参构造函数;若声明有参构造函数则没有无参构造函数
取空字符串赋值即String s = new String()与String s = ""等效
public String(String original) { this.value = original.value; this.hash = original.hash; }字符串之间的复制
public String(char value[]) { this.value = Arrays.copyOf(value, value.length); }如果参数是字符数组,就重新制造一个一摸一样的字符数组装进字符串里
自己写了一个demo发现初始化块先执行,但是觉得这并不是全部情况,查了一下发现顺序为:
父类的静态成员赋值和静态块 (静态块和静态成员的顺序为,谁在前面谁先执行(在不出错的情况下) 子类的静态成员和静态块 父类的构造方法 父类的成员赋值和初始化块 父类的构造方法中的其它语句 子类的成员赋值和初始化块 子类的构造方法中的其它语句因为Math类纯静态
从报错就能看出来了,Math类私有
公共非静态类才需要new,静态方法不用创建对象
重载就是一个函数,在对参数不同的情况下作用不同的行为,区分就看参数,参数相同是重写,不同是重载
abs就是
我觉得不可变指的是数组指向的地址,但是其实数组内容是可变的。换句话说,final的对象型变量本质上内容是可变的,只有final常量型变量才会根本不变
封装就是把需要操作的东西对象化,把与其相关的操作都关联起来,这样可以大大提高代码重用率
em其实我觉得java本身封装性就很强class,extends这些都算了,再加上抽象abstract和接口interface,差不多了,可以说java本身就是封装出来的
上次统计时间:2017-09-24 10:11:03 距离上次统计经过了:156小时50分钟43秒 ------------------------------------- 周次:3 总代码量:1072 新增代码量:652 总文件数:17 新增文件数:7 ------------------------------------- 历史记录: 第3周增加的代码行数和文件数:652 7
转载于:https://www.cnblogs.com/DedSec/p/7616410.html