Java面向对象 创建类 创建对象

文章详细介绍了Java中的类定义,特别是如何创建Person类的对象,设置属性,调用方法。重点展示了对象的独立性和共享方法的概念,以及类的加载和初始化机制。
摘要由CSDN通过智能技术生成

创建类

类的属性

属性用于定义该类或该类对象包含的数据或者说静态特征。属性作用范围是整个类体。

  • 属性定义格式:
[修饰符]  属性类型  属性名 = [默认值] ;

类的方法

方法用于定义该类或该类实例的行为特征和功能实现。方法是类和对象行为特征的抽象。方法很类似于面向过程中的函数。面向过程中,函数是最基本单位,整个程序由一个个函数调用组成。面向对象中,整个程序的基本单位是类,方法是从属于类和对象的。

  • 方法定义格式:
[修饰符]  方法返回值类型  方法名(形参列表) {
        // n条语句
}

实例

public class Person {
    int age ;//年龄
    String name;//姓名
    double height;//身高
    double weight;//体重
    //动词--->方法
    //吃饭
    public void eat(){
        int num = 10;//局部变量:放在方法中
        System.out.println("我喜欢吃饭");
    }
    //睡觉:
    public void sleep(String address){
        System.out.println("我在"+address+"睡觉");
    }
    //自我介绍:
    public String introduce(){
        return "我的名字是:"+name+",我的年龄是:"+age+",我的身高是:"+height+",我的体重是:"+weight;
    }
}

分析

这是一个简单的Java类,名为Person,代表一个人。这个类包含了四个成员变量(属性):age(年龄)、name(姓名)、height(身高)和weight(体重)。类中还定义了三个方法:eat()sleep()introduce(),分别代表“吃饭”、“睡觉”和“自我介绍”的行为。

以下是关于这个类的简要分析:

  1. 属性:

    • age: 用于存储人的年龄。
    • name: 用于存储人的姓名。
    • height: 用于存储人的身高。
    • weight: 用于存储人的体重。
  2. 方法:

    • eat(): 一个没有参数的方法,输出“我喜欢吃饭”。
    • sleep(String address): 一个带有一个字符串参数的方法,输出“我在”加上传入的地址“睡觉”。
    • introduce(): 返回一个字符串,描述人的姓名、年龄、身高和体重。
  3. 变量:

    • int num = 10;: 这是一个局部变量,只在eat()方法内部有效。
  4. 输出:

    • 当调用eat()sleep()introduce()方法时,程序会输出相应的信息。例如,调用eat()会输出“我喜欢吃饭”,调用sleep(address)会输出“我在”加上传入的地址“睡觉”,调用introduce()会输出人的详细信息。

创建对象

创建Test类测试

public class Test01 {//测试类
    //这是一个main方法,是程序的入口:
    public static void main(String[] args) {
        //创建一个人类的具体的对象/实例:
        //创建一个对象,对象的名字叫:zs
        //Person 属于 引用数据类型
        //第一次加载类的时候,会进行类的加载,初始化创建对象的时候,对象的属性没有给赋值,有默认的初始化的值。
        Person zs = new Person();
        zs.name = "张三";
        zs.age = 19;
        zs.height = 166.5;
        zs.weight = 70.4;
        //再创建一个对象:
        //再次创建类的时候,就不会进行类的加载了,类的加载只在第一次需要的时候加载一次
        Person ls = new Person();
        ls.name = "李四";
        ls.age = 18;
        ls.height = 180.6;
        ls.weight = 130.5;
        //对属性值进行读取:
        System.out.println(zs.name);
        System.out.println(ls.age);
        //对方法进行操作:
        //不同的对象,属性有自己的特有的值,但是方法都是调用类中通用的方法。
        //属性:各个对象的属性是独立的,
        //方法:各个对象的方法是共享的。
        zs.eat();
        ls.eat();
        zs.sleep("教室");
        /*String str = zs.introduce();
        System.out.println(str);*/
        System.out.println(zs.introduce());
    }
}


在这里插入图片描述

分析

这段代码是一个简单的Java程序,用于演示对象的创建、属性的设置、方法的调用等基本概念。以下是代码的简要分析:

  1. 类的定义:

    • Test01 是测试类,包含一个 main 方法,这是程序的入口点。
  2. 对象的创建:

    • 通过 Person zs = new Person();Person ls = new Person(); 创建了两个 Person 类的对象,分别命名为 zsls
  3. 属性的设置:

    • 使用点运算符为对象的属性赋值,例如 zs.name = "张三";
  4. 方法的调用:

    • 调用对象的 eat() 方法,该方法在 Person 类中定义。
    • 调用对象的 sleep() 方法,并传递一个字符串参数 “教室”。
  5. 属性的读取:

    • 使用 System.out.println() 打印对象的属性值。
  6. 方法的共享:

    • 所有对象共享同一个 eat() 方法,因为它是类中的静态方法。
  7. 方法的独立性:

    • 每个对象都有自己独立的属性值,但共享相同的方法。例如,虽然 zslsnameage 属性值不同,但他们都调用了同一个 eat() 方法。
  8. 部分注释:

    • 代码中的注释有助于解释代码的工作原理,但被注释掉的代码(例如 String str = zs.introduce(); System.out.println(str);)不会执行。
  9. 输出:

    • 程序将打印出对象 zsls 的属性值,以及他们各自调用的方法(eat()sleep())的输出。
  10. 加载和初始化:

    • 当第一次创建类的新对象时,类会被加载并初始化。后续创建该类的其他对象时,类不再重新加载和初始化。这通过注释进行了说明。
  11. 注意点:
    在提供的代码中,我们没有看到完整的 Person 类定义,所以我们无法分析它的所有属性和方法。但根据提供的代码,我们只能假设 Person 类中定义了相应的属性和方法。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CyberSecure

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值