Java基础-类与对象

如果你不相信努力和时光,那么成果就会是第一个选择辜负你的。不要去否定你自己的过去,也不要用你的过去牵扯你现在的努力和对未来的展望。不是因为拥有希望你才去努力,而是去努力了,你才有可能看到希望的光芒。Java基础-类与对象,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

类与对象

Java这门语言,是一门面向对象的语言;

C++ C# Java Java是纯面向对象语言;

程序设计思想:

  • 面向过程的设计思想 ,C
  • 面向对象的设计思想;涉及到那些对象 对象和对象之间有没有关联 合适的方法在合适的类里面;其实是对现实问题的抽象 跟容易让人理解

面向对象三大特征:

​ 封装 继承 多态

1.1.类与对象

  • 类是一个抽象的概念,是一组对象的蓝图,是把一组对象相同的特征(属性)和功能(方法)抽取出来
  • 类的组成有 属性 和方法
  • 对象是类的一个具体的实例(看得见摸得着的具体的实例)

1.1.1.如何定义一个类

1.属性(或者称为 实例变量/成员变量)

  • 成员变量的类型可以是任何数据类型
  • 成员变量有默认值,是其数据类型的0值,引用类型默认值是null
  • 成员变量的作用域是整个类体
  • 每个对象的成员变量有不同的存储空间

2,方法是类具有的功能;该类的所有对象共享该方法

3,类的定义

public class Student {
    /**
     * 属性
     * 方法 (功能)
     */
    String name; //默认值是 null
    boolean age; // false
    char gender;
    int[] aa; // 默认值是 null

    public void study() {
        System.out.println(name);
        System.out.println("==");
    }

    public void eat() {
        System.out.println("会吃饭");
    }
}

1.1.2.对象的创建和使用

  • 使用关键字new
		// 使用关键字 new
        Student stu1 = new Student();
  • 访问对象属性/方法
public static void main(String[] args) {
        // 使用关键字 new
        Student stu1 = new Student();
        // 如何访问对象方法/属性
        stu1.study();
        System.out.println(stu1.name);
    }

1.1.3.成员变量和局部变量的区别

  • 声明的位置不同,局部变量在方法体种声明,成员变量在类体种声明
  • 作用域不同,局部变量的作用域是方法体,成员变量的作用域是整个类体
  • 局部变量使用之前一定要赋值才能使用,成员变量有默认值(JVM给的)数据类型的0值
  • 当成员变量和局部变量重名 的时候,优先使用局部变量

1.1.4.构造方法(构造器)

  • 用来完成对象的初始化动作,给成员变量赋了初始值
  • 构造方法的方法名和类名一样,没有返回值
  • 如果没有添加构造方法,会有一个默认的无参构造方法
  • 如果自己写了构造方法,不会再有默认的构造方法了
public class Student {
    /**
     * 属性
     * 方法 (功能)
     */
    String name; //默认值是 null
    int age; // false
    char gender;

    public Student(String a, int b, char c) {
        name = a;
        age = b;
        gender = c;
    }
    
    public void getMessage() {
        System.out.println("学生姓名:" + name + "学生年龄: " + age + " 学生性别f:" + gender);
    }

    public void study() {
        String name = "娜美";
        System.out.println(name + "正在学习");
    }

    public void eat() {
        System.out.println("会吃饭");
    }
}

使用

  		Student stu1 = new Student("路飞",19,'m');
        stu1.getMessage();
        stu1.study();

1.1.5.构造方法的重载

  • 有多个构造方法
    public Student() {
    }

    public Student(String a, int b, char c, Computer com) {
        name = a;
        age = b;
        gender = c;
        computer = com;
    }

案例,描述每个学生拥有一台电脑

public class Student {
    String name; //默认值是 null
    int age; // false
    char gender;
    Computer computer; //null
    public Student() {
    }
    public Student(String a, int b, char c, Computer com) {
        name = a;
        age = b;
        gender = c;
        computer = com;
    }
    public void study() {
        System.out.println(name + "正在使用" + computer.brand + " 学习");
    }
    
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/192966.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!