【Java】this关键字、构造方法、标准javabean类(009)

目录

♦️构造方法

🎃无参数构造方法(空参构造)

🎃有参数构造方法

♦️this关键字

🎃就近原则

🎃使用this关键字调用本类中的属性

​编辑

🎃使用this关键字调用成员方法

​编辑

🎃使用this关键字调用构造方法

♦️标准javabean类

🎃格式

🎃示例代码

🎃快捷键


♦️构造方法


🎃无参数构造方法(空参构造)

初始化对象时,成员变量均采用默认值

空参构造格式:

pubic class...{
    修饰符 类名(){}
}
//注:括号中无参数

完整代码:


🎃有参数构造方法

在初始化对象时,同时可以为成员变量赋值

有参构造格式:

pubic class...{
    修饰符 类名(参数)
   {
     方法体;
   }
}

完整代码:

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("zhangsan",18);
        System.out.println(s.getName());
        System.out.println(s.getAge());
    }
}

注:运行结果没有执行无参构造方式

注意事项:

  • 任何类定义出来,默认就自带了无参数构造器,写不写都有。
  • 一旦定义了有参数构造器,无参数构造器就没有了,此时就需要自己写无参数构造器了。
  • 建议在任何时候都手动写上空参和带全部参数的构造方法


♦️this关键字


🎃就近原则

 就近原则是指当Java虚拟机(JVM)执行方法调用或变量访问时,它会首先在当前作用域内查找匹配的方法或变量。如果当前作用域没有找到,它会继续向外层作用域逐级查找,直到找到为止。如:


🎃使用this关键字调用本类中的属性

原代码:

import java.util.Scanner;
class Student {
    //属性
    String name=;
    int age;

    //空参构造方法
    public Student() {}

    public Student(String name, int age) {
      name = name;//将name本身赋值给name
      age = age;//将age本身赋值给age
    }
}


public class Main {
    public static void main(String[] args) {
        //创建对象
        Student s = new Student("zhangsan", 18);
        System.out.println(s.name);
        System.out.println(s.age);

    }
}

使用this后:

import java.util.Scanner;
class Student {
    //属性
    String name;
    int age;

    //空参构造方法
    public Student() {}

    public Student(String name, int age) {
       this.name = name;
        this.age = age;
    }
}


public class Main {
    public static void main(String[] args) {
        //创建对象
        Student s = new Student("zhangsan", 18);
        System.out.println(s.name);
        System.out.println(s.age);

    }
}


🎃使用this关键字调用成员方法

import java.util.Scanner;
class Student {
    //属性
    String name;
    int age;

    public void Walk() {
        System.out.println("走路");
    }

    public void Talk() {
        this.Walk();//调用成员方法
    }
}

public class Main {
    public static void main(String[] args) {
        //创建对象
        Student s = new Student();
        s.Talk();
    }
}


🎃使用this关键字调用构造方法

import java.util.Scanner;
class Student {
    //属性
    String name;
    int age;

    //空参构造方法
    public Student() {
        System.out.println("调用了无参构造方法");
    }

    public Student(String name, int age) {
        this();//调用无参构造方法
       this.name = name;
        this.age = age;
    }
}


public class Main {
    public static void main(String[] args) {
        //创建对象
        Student s = new Student("zhangsan", 18);
        System.out.println(s.name);
        System.out.println(s.age);

    }
}



♦️标准javabean类

🎃格式

类名需要见名知意
② 成员变量使用private修饰
③ 提供至少两个构造方法

  • 无参构造方法
  • 带全部参数的构造方法

④ 成员方法
提供每一个成员变量对应的setXxx()/getXxx()
如果还有其他行为,也需要写上


🎃示例代码

import java.util.Scanner;
class Student
{
    //属性,成员变量用private修饰
    private String name;
    private int age;
    //空参构造方法
    public Student(){}
    //有参数构造方法
    public Student(String name,int age)
    {
        this.name=name;
        this.age=age;
    }
   //成员变量对应的get,set
    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 Main {
    public static void main(String[] args) {
        //创建对象
        Student s=new Student("zhangsan",18);
        System.out.println(s.getName());
        System.out.println(s.getAge());
    }
}


🎃快捷键

按键:alt+insert或者alt+insert+fn

步骤:

 

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是符合您需求的Java代码: ``` /** * 手机 */ public class Phone { // 成员变量 private String brand; // 手机品牌 private String color; // 手机颜色 private int price; // 手机价格 /** * 构造函数 */ public Phone(String brand, String color, int price) { this.brand = brand; this.color = color; this.price = price; } /** * 成员方法 */ public void call(String phoneNumber) { System.out.println("给" + phoneNumber + "打电话"); } /** * get方法,获取手机品牌 */ public String getBrand() { return brand; } /** * set方法,设置手机品牌 */ public void setBrand(String brand) { this.brand = brand; } /** * 局部变量和成员变量的区别: * 成员变量作用于整个中,可以被中其他方法、构造函数所调用, * 局部变量只在声明它的方法、语句块中有效,方法结束后,变量就会被销毁。 * * private关键字封装例: * 成员变量前加上private关键字,防止在外直接访问和修改,需要使用get和set方法来访问和修改。 * * this的使用: * 在构造函数中使用this关键字,表示调用本的其他构造函数,方便代码的复用。 * * JavaBean的定义: * JavaBean是一种符合特定规范的Java,它具有无参构造函数、私有属性、公有get/set方法, * 可以被其他Java程序方便地使用,主要用于数据传输。 */ } ``` 以上是一个简单的Java,实现了手机的基本功能,并对注释进行了详细的描述。如果您有任何问题,欢迎继续提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值