面向对象(上)

面向对象(上),第1张

面向对象(上)

Java语言 人人精通 卷起来
  • 面向对象(上)
    • 面向对象的三个特征
      • 封装
      • 继承
      • 多态
    • 对象的创建和使用方法
      • 什么是类
      • 什么是对象
      • 类的定义和对象的创建
      • 访问控制符
    • 类的封装方式
      • 为什么需要封装
      • 如何实现封装
    • 掌握方法的使用方式
      • 方法的重载和递归
      • 构造方法
    • 掌握this 和 static 关键字的使用
      • this 关键字
      • static关键字
        • 静态变量:
        • 静态方法
        • 静态代码块

面向对象(上)

面向过程:
面向

面向对象的三个特征 封装

封装是面向对象的核心思想,将对象的属性和行为封装起来,不需要让外界知道具体实现细节,这就是封装思想。

继承

继承主要描述的就是类与类之间的关系,通过继承,可以在无须重新编写原有类的情况下,对原有类的功能进行扩展。

多态

多态指的是在一个类中定义的属性和功能被其他类继承后,当把子类对象直接赋值给父类引用变量时,相同引用类型的变量调用同一个方法所呈现出的多种不同行为特征。

对象的创建和使用方法 什么是类

类是对一类事物的描述(属性,行为),是抽象的
类的定义:成员变量(对应事物的属性)
成员方法(对应事物行为)

什么是对象

对象是一类事物的实例,是具体的
对象是类的一个实例

类的定义和对象的创建

举例
定义一个student类

public class Student {
    //成员变量
    String name;
    int age;

    //成员方法
    public void eat() {
        System.out.println("吃饭!");
    }
    public void sleep() {
        System.out.println("睡觉!");
    }
    public void study() {
        System.out.println("学习!");
    }
}

student对象的创建和使用

public class Usestudent {
    public static void main(String[] args) {
        Student stu = new Student();

        //成员变量赋值
        stu.name = "刘源";
        stu.age = 18;

        System.out.println(stu.name);
        System.out.println(stu.age);

        stu.eat();
        stu.sleep();
        stu.study();
    }



}

练习:定义一个手机类

public class Phone {
    String brand;
    double price;
    String color;

    public void call(String who){
        System.out.println("给"+ who + "打电话");
    }
    public void sendMessage(){
        System.out.println("群发短信");
    }
}

手机对象的创建以及使用

public class Usephone {
    public static void main(String[] args) {
        Phone phone = new Phone();

        phone.brand = "华为";
        phone.price = 4888.0;
        phone.color = "黑色";

        System.out.println(phone.brand);
        System.out.println(phone.price);
        System.out.println(phone.color);

        phone.call("刘源");
        phone.sendMessage();

    }
}

一个对象的内存图

使用对象类型作为方法的参数
使用对象类型作为方法的返回值

访问控制符 访问控制符访问范围private同一类中defautl同一类中,同一包中protected同一类中,同一包中,子类中public全局范围 类的封装方式 为什么需要封装

为了避免出现不合理的问题,在设计一个java类时,应该对成员变量的访问作出一些限定,不允许外界随意访问。这就需要实现类的封装

如何实现封装

将类中的属性私有化,即使用private关键字来修饰,setter and getter 方法

掌握方法的使用方式 方法的重载和递归

方法的重载(overload)
方法函数名相同,但是参数不同(参数个数或者类型不同)

方法的递归
方法的递归是指在一个方法的内部调用自身的过程。递归必须要有结束条件。

构造方法

如果需要在实例化对象的同时就为这个对象的属性进行赋值,可以通过构造方法来实现。
构造方法是类的一个特殊成员,它会在类实例化对象时被自动调用。

构造方法语法格式与成员方法的语法格式相似
不同的是需要同时满足以下三个条件
1.方法名与类名相同
2.在方法名的前面没有任何返回值类型的声明
3.在方法中不能使用return语句返回一个值,但是可以单独写return语句来作为方法的结束

构造方法也可以重载

在java中的每个类都至少有一个构造方法,如果在一个类中没有显示的定义构造方法,系统会自动为这个类创建一个默认的构造方法,这个默认的构造方法没有参数,在其方法体中没有任何代码,即什么也不做。

掌握this 和 static 关键字的使用 this 关键字

Java中提供了一个this关键字来指代当前对象,用于在方法中访问对象的其他成员。
this关键字的3种常见的用法
1.通过this关键字调用成员变量,解决与局部变量名称冲突问题。
2.通过this关键字调用成员方法
3.通过this关键字调用构造方法
this关键字调用类的构造方法时,注意以下几点
1.只能在构造方法中使用this调用其他的构造方法,不能在成员方法中使用
2.在构造方法中,使用this调用构造方法的语句必须是该方法的第一条执行语句,且只能出现一次。
3.不能在一个类的两个构造方法中使用this互相调用。

static关键字

在java中定义了一个static关键字,它用于修饰类的成员,如成员变量,成员方法以及代码块,被static修饰过的成员具备一些特殊性

静态变量:

使用static关键字来修饰成员变量,该变量被称作静态变量,它可以被所以实例所共享。
静态变量的访问:
类名.变量名
只能用于修饰成员变量,不能用于修饰局部变量

静态方法

想要使用类中的成员方法,需要先将这个类实例化,而在实际开发中,有时会希望在不创建对象的情况下就可以调用某个方法,这种情况下就可以使用静态方法。在类中定义的方法前加上static关键字。
静态方法的访问
类名.方法名
实例对象名.方法

静态代码块

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5076286.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-16
下一篇 2022-11-16

发表评论

登录后才能评论

评论列表(0条)

保存