19、面向对象编程——类与对象的创建,构造器的详解

相关内容:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

问题描述:

(1)

//学生类,这个就像模板,其他地方能引用的话,都可以
public class Student {
    //属性:字段
    String name;
    int age;
    //方法
    public void study(){
        System.out.println(this.name+"在学习");
    }
}
public class App{
        public static void main(String[] args) {
            //类:抽象的,实例化
            //类实例化后返回一个自己的对象!
            //student 对象就是一个student 类的具体实例
            Student student=new Student();

            Student xiaoming=new Student();
            Student xiaohong=new Student();

            System.out.println(xiaoming.name);    //输出null
            System.out.println(xiaoming.age);   //输出0
            System.out.println("==================");
            xiaoming.name="小明";
            xiaoming.age=3;
            System.out.println(xiaoming.name);    //输出小明
            System.out.println(xiaoming.age);     //输出3
        }
}

(2)

@Override
     public class Student {
    //一个类就算什么都不写,他也会有存在的一个方法
    //显示的定义构造器

    String name;
    
    /*构造器:
    1、和类名相同
    2、没有返回值
    构造器的作用:
    1、使用new 关键词,本质是调用构造器
    2、初始化对象的值
    注意点:
    1、定义有参构造之后,如果想使用无参构造,显示的定义一个无参的构造
     */
    
    //无参构造器,可以实例化初始值
    public Student(){
    }
    //有参构造:一旦定义了有参构造,无参构造一定显示定义

    public Student(String name){
        this.name=name;
    }
    //快捷键:alt+insert 构造有参
}

        }
@Override
    public class App{
        public static void main(String[] args) {
          //new 实例化了一个对象
            //Student student = new Student();   ()括号里没有东西就是调用无参构造
            Student student = new Student("xiaoming");   //调用有参构造
            System.out.println(student.name);

        }
}

(3)

@Override
        public void run() {
            bytes = mmInStream.read(buffer);
            mHandler.obtainMessage(READ_DATA, bytes, -1, buffer).sendToTarget();
        }
@Override
        public void run() {
            bytes = mmInStream.read(buffer);
            mHandler.obtainMessage(READ_DATA, bytes, -1, buffer).sendToTarget();
        }

创建对象内存分析:

@Override
       public class pet{
    String name;
    int age;

    public void shout(){
        System.out.println("叫了一声!");
    }
}
@Override
      //一个项目应该只存在一个main方法
public class App{
        public static void main(String[] args) {
            //狗
          pet dog=new pet();
          dog.name="小海";
          dog.age=3;
          dog.shout();
          System.out.println(dog.age);
          System.out.println(dog.name);
          //猫
          pet cat=new pet();
        }
}

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值