本文介绍: 构造方法只能在对象创建时被调用,也就是new时候调用,不能在程序直接调用不同于一般的方法实现相同操作需要创建多种方法,此时,当使用方法时不方便,就会用到方法重载private表示仅能在类的内部访问成员,无法从类的外部访问成员。是一种特殊方法,在对象创建初始化对象的成员的方法。如果引用当前类的方法,变量或者返回当前类的对象时,用this关键字。在类的构造方法可以调用类的其他构造方法,且只能调用一个构造方法。如果程序中没有显示构造方法,则系统会提供默认构造方法

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只能在方法的定义使用

 

 

原文地址:https://blog.csdn.net/2301_80099706/article/details/134783819

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_46802.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注