看懂 UML 图中 带下划线 _____为构造器 -为private 权限修饰符 +为public 权限修饰符 #为protected 权限修饰符
方法中有返回值的 则在定义方法之后的:之后定义返回值类型。
类的封装性 。
类的三要素 属性 方法 构造器
this() 构造器 之间调用
this 关键字的使用
this 使用在类中,可以用来修饰 属性 方法 构造器
表示当前对象
在任意方法中如果形参跟成员变量重名 必须加 this 如果形参变量不跟成员变量重名 建议加上, 增强可阅读性
this(形参列表); 调用类的其他构造器 , 用在构造器中, 必须在构造器的首行。
类中如存在N个 构造器 那么最多只有 N-1个构造器中调用this()。
import static 导入类中的静态属性和方法
java.lang 包下和当前包下的 默认不用显示的导入
面向对象的 特征一
封装 -----> 类的三要素 属性 。方法、 构造器
面向对象的 特征二
继承性 ----> 目的 :为了减少代码的冗余
方法的重写 --- overwrite
区别 方法重载 overload 【两同一不同 :同一个类,同一个方法名,不同的参数列表, 与权限修饰符 和返回值 无关】
构造器也可以重载。。
方法重写: override overwrite 子类对父类的方法进行重写 重构 。
在继承的基础上 方法名相同,参数列表相同 返回值相同 方法的权限修饰符 大于等于父类方法的权限修饰符。
抛出的异常小于等于父类的异常范围。 如果父类方法为static 则子类为static 如果父类为非 static 方法 子类也只能为非static方法。
权限修饰符 可以修饰 类的的三大要素 属性 方法 构造器。 也可以修饰类本身
private 只能在本类中调用
default 可以在本类 和 同一个包中调用
protected 可以在本类 和 同一个包 及 子类中调用
pulbic 可以在任何地方调用。
// 1 默认值 初始化
// 2 属性值 初始化
// 3 构造器 初始化
// 4 方法 初始化
// tips 调用构造器 必须在首行
package day07;
public class TestAngle {
public static void main(String[] args) {
Angle an = new Angle();
an.setBase(2);
an.setHeight(3);
System.out.println(an.findArea());
}
}
class Angle{
// 1 默认值 初始化
private double base;
// 2 属性值 初始化
private double height=1.0;
// 3 构造器 初始化
public Angle(){
base=1.0;
this.height=2.0;
}
// 4 方法 初始化
public void setBase(){
this.base=3.0;
}
public Angle(double base){
// tips 调用构造器 必须在首行
this();
this.base = base;
}
public Angle(double base,double height){
this.base=base;
this.height=height;
}
public double getBase(){
return base;
}
public double getHeight(){
return height;
}
public void setBase(double base){
this.base=base;
}
public void setHeight(double h){
height=h;
}
// mianji
public double findArea(){
return base * height / 2;
}
}