飞不高 发表于 2024-5-14 10:29:06

Java底子 --- 面向对象

面向对象

面向对象介绍

介绍


[*]面向:拿、找
[*]对象:能干活的东西
[*]面向对象编程:拿东西过来坐对应的事情
设计对象并使用

类和对象


[*]类(设计图):是对象共同特性的形貌;
[*]对象:是真实存在的详细东西
在Java中,必须先设计类,才能获得对象。
如何定义类

public class 类名{
    1.成员变量(代表属性,一般是名词)
    2.成员方法(代表行为,一般是动词)
    3.构造器(后面学习)
    4.代码块(后面学习)
    5.内部类(后面学习)
}public class Phone {
    String brand;
    double print;
    //行为(方法)
    public void call(){
      
    }
    public void playGame(){
      
    }
}如何得到类的对象

类名 对象名 = new 类名();Phone p = new Phone();如何使用对象


[*]访问属性:对象名.成员变量
[*]访问行为:对象名.方法名(...)
范例:
public class Phone {
    //属性
    String brand;//手机的品牌
    double price;//手机的价格
    //行为
    public void call(){
      System.out.println("手机在打电话");
    }
    public void playGame(){
      System.out.println("手机在玩游戏");
    }
}public class PhoneTest {
    public static void main(String[] args) {
      //创建手机的对象
      Phone p = new Phone();
      //给手机赋值
      p.brand = "菠萝";
      p.price = 1145.14;
      //获取手机对象中的值
      System.out.println(p.brand);
      System.out.println(p.price);
      //调用手机中的方法
      p.call();
      p.playGame();

      //第二部手机
      Phone p2 = new Phone();
      p2.brand = "鸭梨";
      p2.price = 1008.6;

      p2.call();
      p2.playGame();
    }
}总结


[*]类和对象是什么?

[*]类:是对象共同特性的形貌(设计图);对象:是真实存在的详细实例。

[*]如何得到对象?
public class 类名{
    1.成员变量(代表属性,一般是名词)
    2.成员方法(代表行为,一般是动词)
}类名 对象名 = new 类名();
[*]拿到对象后能做什么?

[*]对象名.成员变量
[*]对象名.方法名(...)

类的几个补充注意事项


[*]用来形貌一类事物的类,专业叫做: Javabean类。
在Javabean类中,是不写main方法的。
[*]在以前,编写main方法的类,叫做测试类。
我们可以在测试类中创建javabean类的对象并举行赋值调用。
public class 类名{
    1.成员变量(代表属性)
    2.成员方法(代表行为)
}

[*]类名首字母建议大写,需要见名知意,驼峰模式。
[*]一个Java文件中可以定义多个class类,且只能一 个类是public修饰,而且public修饰的类名必须成为代码文件名。
现实开发中建议照旧一个文件定义一个class类。
[*]成员变量的完备定义格式是: 修饰符 数据范例 变量名称 = 初始化值;一样平常无需指定初始化值,存在默认值。
数据范例明细默认值根本范例byte、short、int、long0根本范例float、double0.0根本范例booleanfalse引用范例类、接口、数组、Stringnull
练习

女朋侪类
编写女朋侪类,创建女朋侪类的对象
给女朋侪的属性赋值并调用女朋侪类中的方法。
自己思索,女朋侪类中有哪些属性,有哪些行为?
public class GirlFriendTest {
    public static void main(String[] args) {
      //创建女朋友的对象
      GirlFriend gf1 = new GirlFriend();
      gf1.name = "柳如烟";
      gf1.age = 18;
      gf1.gender = "女神";

      System.out.println(gf1.name);
      System.out.println(gf1.age);
      System.out.println(gf1.gender);

      gf1.sleep();
      gf1.eat();

      System.out.println("=====================================");

      GirlFriend gf2 = new GirlFriend();
      gf2.name = "苏沐雪";
      gf2.age = 19;
      gf2.gender = "青梅竹马";

      System.out.println(gf2.name);
      System.out.println(gf2.age);
      System.out.println(gf2.gender);

      gf2.sleep();
      gf2.eat();
    }
}总结


[*]定义类有哪些建议,有什么需要注意的?

[*]类名首字母建议大写、英文、有意义,满意驼峰模式,不能用关键字,满意标志符规定;
[*]一个代码文件中可以定义多个类,但是只能一个类是public修饰的,
public修饰的类名必须是Java代码的文件名称。

[*]成员变量的格式是什么样的,有什么特点?

[*]成员变量的完备定义格式是:修饰符 数据范例 变量名称 = 初始化值;
[*]一样平常无需指定初始化值。

封装

告诉我们,如何正确设计对象的属性和方法
原则:对象代表什么,就得封装对应的数据,并提供数据对应的行为
封装的好处


[*]让编程变得很简单,有什么事,找对象,调方法就行。
[*]降低我们的学习本钱,可以少学、少记,或者说压根不用学,不用记对象有哪些方法,有需要时去找就行
private关键字


[*]是一个权限修饰符
[*]可以修饰成员(成员变量和成员方法)
[*]private修饰的成员只能在本类中才能访问
public class GirlFriend {    private String name;    private int age;    private String gender;    //针对于每个私有化的成员变量,都要提供get和set方法    //set方法:给成员变量赋值    //get方法;对外提供成员变量的值    public void setName(String n){      name = n;    }    public String getName(){      return name;    }    public void setAge(int a){      if(a >= 0 && a = 0 && age
页: [1]
查看完整版本: Java底子 --- 面向对象