JAVA 面向对象

活动地址:CSDN21天学习挑战赛

this关键字

成员变量:将变量定义在方法外面,类的里面。

局部变量:将变量定义在方法里面。

Q1:当成员变量和局部变量重名时,会输出什么?(就近原则)

public class demo2{
    int age;
    public void method() {
        int age = 18;
        System.out.println(age);
    }
}
public class Girltest {
    public static void main(Stirng[] args){
        Girl g1 = new Girl();
        g1.method();
    }
    
}
//根据就近原则,输出的值为18

Q2:不想使用局部变量age的值,只想使用成员变量的值,怎么办?

public class demo2{
    int age;
    public void method() {
        int age = 18;
        System.out.println(this.age);
    }
}
public class Girltest {
    public static void main(Stirng[] args){
        Girl g1 = new Girl();
        g1.method();
    }
    
}
//输出结果为0

构造方法:(构造器 、构造函数)

构造方法的定义:

  • 如果没有定义构造的方法,系统将给出一个默认的无参数构造方法
  • 如果定义了构造方法,系统将不再提供默认的构造方法

构造方法的重载

  • 带参构造方法和无参数的构造方法两者方法名相同但参数不同,这叫做构造方法的重载。

注意事项

无论是否使用,都手动熟悉我无参数构造方法和带全部参数构造方法

作用:在创建对象时给成员变量进行初始化的。

格式:

public student{

        修饰符 类名(参数){

                方法体;

        }

  }

特点:

方法名与类名相同,大小写保持一致;

没有返回值类型,没有void;

没有具体的返回值(不能由return待会结果数据)

空参构造方法:成员变量默认初始化值

带全部参数的构造方法:给成员变量赋值

执行时机:

  • 创建对象的时候由虚拟机调用,不能手动调用构造方法;
  • 每创建一次对象,就会调用一次构造方法
  • public class student {
        private String name;
        private int age;
        //如果自己没有写空参构造方法,虚拟机自己会加上空参的构造方法
        /*public student(){
            System.out.println("执行");
        }*/
        //
        public student(String name,int age){
            this.name = name;
            this.age  = age;
        }
        public String getname(){
            return name;
        }
        public void setname(String name){
            this.name = name;
        }
    
        public int getage(){
            return age;
        }
        public void setage(int age){
            this.age = age;
        }
    }
    public class studenttest {
        public static void main(String[] args){
            //创建对象
            //调用的空参构造
            //student s = new student();
            student s = new student("zhangsan", age:23);
            System.out.println(s.getname());
            System.out.println(s.getage());
    
        }
        
    }
    
    

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值