专业的JAVA编程教程与资源

网站首页 > java教程 正文

Java学习:基础(面向对象)(java面向对象基础知识)

temp10 2024-10-21 12:17:36 java教程 13 ℃ 0 评论

面向对象概述

  • 什么是面向对象:数据以及动作,对象是数据和动作的结合体
  • 面向对象的好处:符合人类思维习惯,编程更简单,更好理解

设计对象并使用

Java学习:基础(面向对象)(java面向对象基础知识)

  • 设计类,创建对象并使用

1)类:是具体对象共同特征的描述

2)对象:是真实存在的具体实例

3)类定义包括:类型、成员变量、成员方法、构造器、代码块、内部类

4)创建对象:类型 对象名 = new 名()

package com.itheima.object;

public class Car {
    // 属性(成员变量) ,格式:修饰符 数据类型 变量名称 = 初始值,一般无需指定初始值
    String name;
    double price;

    // 行为
    public void start() {
        System.out.println(name+"汽车已启动,价格:"+price);
    }

    public void run() {
        System.out.println(name+"汽车已跑");
    }
}

public class ObjectDemo1 {
    public static void main(String[] args) {
        // 创建对象
        Car c = new Car();
        c.name = "BYD";
        c.price = 2398989.0;
        c.start();
        c.run();
    }
}
  • 定义类注意事项

1)属性格式:修饰符 数据类型 变量名称 = 初始值,一般无需指定初始值

2)类名使用大驼峰命名(首字母大写),且有意义

3)一个java文件可以定义多个类,但是只能有一个类是public修饰,且该类名必须为文件名


构造器

  • 构造器作用:用于初始化一个类的对象,并返回对象的地址
  • 构造器分类

① 无参构造器,默认存在,初始化对象时成员变量均采用默认值

② 有参构造器,初始化对象时同时可以为对象进行赋值

package com.itheima.object;

public class Car {
    // 属性(成员变量) ,格式:修饰符 数据类型 变量名称 = 初始值,一般无需指定初始值
    String name;
    double price;

    // 行为
    public void start() {
        System.out.println(name+"汽车已启动,价格:"+price);
    }

    public void run() {
        System.out.println(name+"汽车已跑");
    }
    
    // 无参构造器
    public Car() {
        System.out.println("无参构造器");
    }
    
    // 有参构造器
    public Car(String name, double price) {
        name = name;
        price = price;
        System.out.println(name+"汽车已启动,价格:"+price);
    }
}

public class ObjectDemo1 {
    public static void main(String[] args) {
        // 创建对象
        Car c = new Car();
        c.name = "BYD";
        c.price = 2398989.0;
        c.start();
        c.run();

        String name = "BMW";
        double price = 2398989.99;
        Car c1 = new Car(name, price);
        c1.start();

    }
}

this关键字

  • 用于访问当前的成员变量、成员方法
package com.itheima.object;

public class Car {
    // 属性(成员变量
    String name;
    double price;

    // 有参构造器
    public Car(String n, double p) {
        this.name = n;
        this.price = p;
        System.out.println(name+"汽车已启动,价格:"+price);
    }
}

封装

  • 面向对象三大特征:封装、继承、多态
  • 什么是封装:隐藏实现细节、暴露合适的访问方式
  • 一般对成员变量使用private关键词进行隐藏,只有当前类可以访问
  • 提供public公开的方法取值和赋值
public class Student {
    private int score;

    // 设置值
    public void setScore(int score) {
        this.score = score;
        
    }
    
    // 获取值
    public int getScore() {
        return this.score;
    }
}

成员变量与局部变量

  • 成员变量和局部变量的区别

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表