Java面向对象基础-2022年4月17日

Java面向对象基础

面向对象中的class变量

  • 变量与局部变量的区别:

定义的位置不同

局部变量:定义的位置是在方法内部或者是方法构造中
成员变量:成员变量定义在class里面方法外面

默认值

局部变量:无默认值
成员变量:字面值与数组相同

适合范围

局部变量:从定义到包含其构造结束
成员变量:自身类有效

命名

局部变量:局部变量的命名不允许冲突
成员变量:成员变量的变量名可以和局部变量重名,局部变量优先

方法的重载

  • 什么是方法的重载?

一个类中定义多个相同名称的方法

特点:
1. 方法名必须相同
2. 参数列表不同(类型,个数,顺序)
3. 与访问修饰符,返回值无关
好处: 屏蔽使用差异,灵活,方便

**注意: ** 只是参数不同不能重载


public class test {

    public test(){}
    public test(String name){}
    public test(String age){}
}

构造方法

  • 什么是构造方法?
    类中的特殊方法,主要用于创建对象
    特点:
    1. 名称与类名完全相同
    2. 没有返回值
    3. 创建对象时,触发构造方法,则编译器默认提供无参数构造方法

构造方法的重载: 普通方法的重载是一样的

this关键字

this关键字的使用方法

  1. 调用实例属性、实例方法,如this.name,this,say();
  2. 调用本地类中其他的构造方法,如this();this(实参);

public class demo_4 {

    public static void main(String[] args) {
        demo_test.car car = new car();
        car car1 = new car("黄色发法拉利","yellow","China","129999999$");
        car car2 = new car("黄色保时捷","yellow","China","146456544$");
        car car3 = new car("黄色阿尔法","yellow","China","414324534$");
        car car4 = new car("黄色布加迪","yellow","China","414325345$");
        demo_test.car[] St = new car[]{car1, car2, car3, car4};
        for (int i=0;i<St.length;i++){
            String message = St[i].toString();
        System.out.println(message);
        }
        Person person = new Person("李佳骏","165","175","500101200206082213");
        System.out.println(person);
        
//        car car5 = new supercar("黄色发法拉利","yellow","China","129999999$");

    }

}
class supercar extends car{
    
    
    
    @Override
    public String getCarPrice() {
        if(Integer.valueOf(this.carPrice)>100000){
            this.carShape = "跑车";
        }else {
            this.carShape = "一般汽车";
        }
        return super.getCarPrice();
    }

    @Override
    public String toString() {
        return this.path + " : {" +
                "carName='" + carName + '\'' +
                ",carColor='" + carColor + '\'' +
                ",carAddress='" + carAddress + '\'' +
                ",carPrice='" + carPrice + '\'' +
                ",carShape='"+carShape+'\''+
                '}';
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值