第十四周课堂笔记

7.Java语言类的关键技术

7.1类的成员的权限修饰符

private:表示仅能在类的内部访问该成员,无法从类的外部访问该成员

public:表示该成员可以被其他的任何类使用

缺省:表示该成员仅能被同一个包中的类所访问或者调用

7.2方法的重载

实现相同的操作,需要创建多种方法,此时,当使用方法时不方便,就会用到方法重载

方法重载:

        定义方法时,方法名称相同,参数列表不同

方法重载属于多态的一种

public class Work1 {
    public static void main(String[] args) {
        Student st = new Student();
        System.out.println(st.and(2, 5));
        System.out.println(st.and(3.4, 2.2));
    }
}
class Student{
    public int and(int a,int b){
        return a+b;
    }
    public double and(double a,double b){
        return a+b;
    }
}
7.3构造方法(构造器)

7.3.1构造方法的作用和定义

构造方法作用

        是一种特殊的方法,在对象被创建时初始化对象的成员的方法

构造方法定义

        构造方法的方法名和类名称完全相同

        构造方法没有返回值,但是也不能用void修饰符

        构造方法只能在对象创建时被调用,也就是new的时候调用,不能在程序中直接调用,不同于一般的方法

public class Work1 {
    public static void main(String[] args) {
        Student st = new Student(2,6);
        System.out.println(st.area());
        System.out.println(st.volume());
    }
}
class Student{
    private double radius;
    private int height;
    private double pi = 3.14;
    public Student(double r,int h){
        radius=r;
        height=h;
    }
    double area(){
        return pi*radius*radius;
    }
    double volume(){
        return area()*height;
    }
}

7.3.2默认的构造方法

默认构造方法格式

        Student(){

        }

如果class前面是public,则构造方法也是public

如果程序中没有显示的构造方法,则系统会提供默认的构造方法

如果程序中含有显示的构造方法,则系统不再提供默认的构造方法

7.3.3构造方法的重载

一个类中可以包含多个构造方法,它们之间构成方法重载(有参构造器,无参构造器)

从一个构造方法调用另一个构造方法

调用时不需要方法名称,使用关键字this代替,参数根据需要填写

this关键字必须写在构造方法内的第一行位置

public Student() {
        this(2.5,6);
    }
    public Student(double r, int h){
        radius=r;
        height=h;
    }

this关键字

this代表指向当前对象的引用

如果引用当前类的方法,变量或者返回当前类的对象时,用this关键字

在类的构造方法中可以调用类的其他构造方法,且只能调用一个构造方法

this只能在方法的定义中使用

你可能感兴趣的:(笔记)