0
点赞
收藏
分享

微信扫一扫

【Java SE】类和对象(上)

雷亚荣 2023-11-11 阅读 46

目录

一. 面向对象的初步认知

1.1 什么是面向对象

1.2 面向对象与面向过程

二. 类定义和使用

2.1 简单认识类

 2.2 类的定义格式

三. 类的实例化 

3.1 什么是实例化 

3.2 实例化对象 

四. this引用(重点)

 4.1 为什么要有this引用

 4.2 this的使用

4.3 this引用的特性

五.对象的构造及初始化 

5.1 默认初始化

5.2 就地初始化

​编辑

5.3 构造方法(重点)

总结:  


本篇文章为JavaSE中的重点内容 希望大家好好看看


 一. 面向对象的初步认知

1.1 什么是面向对象


1.2 面向对象与面向过程

举例说明面向对象与面向过程的区别:

面向过程:

传统洗衣服过程

 面向对象:

现代洗衣服过程:


二. 类定义和使用

2.1 简单认识类

 例如:

 2.2 类的定义格式

在java中定义类时需要用到class关键字
 

// 创建类
class ClassName{ 
  field;    // 字段(属性) 或者 成员变量
  method;    // 行为 或者 成员方法
}

例如刚才的洗衣机我们可以给它描述:

class WashMachine{
  public String brand;  // 品牌
  public String type;   // 型号
  public double weight;  // 重量
  public double length;  // 长
  public double width;  // 宽
  public double height;  // 高
  public String color;  // 颜色
 
  public void washClothes(){  // 洗衣服
    System.out.println("洗衣功能");
 }
 
  public void dryClothes(){   // 脱水
    System.out.println("脱水功能");
 }
 
  public void setTime(){    // 定时
    System.out.println("定时功能");
 }
}

再定义一个狗类:

class Dog {
    public String name;
    public String color;
    public int age;

    public void eat() {
        System.out.println(name + "吃东西");
    }
    
    public void wag() {
        System.out.println(name + "摇尾巴");
    }
}

三. 类的实例化 

3.1 什么是实例化 

3.2 实例化对象 

拿上处狗的例子来举例:

 

 

 习题:

1.引用可以指向-引用吗?

2.一个引用 能不能同时指向 多个对象吗?

3.dog1指向了null对象?

实现俩个数字的交换(重点)

class myValue1 {
    public int val;
}
class myValue2 {
    public int val;
}

public class Test {
    public static void swap(myValue1 val1,myValue2 val2) {
        int tmp = val1.val;
        val1.val = val2.val;;
        val2.val = tmp;
    }
    public static void main(String[] args) {
        myValue1 val1 = new myValue1();
        val1.val = 10;
        myValue2 val2 = new myValue2();
        val2.val = 20;
        System.out.println("交换前");
        System.out.println(val1.val);
        System.out.println(val2.val);
        swap(val1,val2);
        System.out.println("交换后");
        System.out.println(val1.val);
        System.out.println(val2.val);
  }
}

  


四. this引用(重点)

 4.1 为什么要有this引用

引用一个例子就明白了:

public class Date {
    public int year;
    public int month;
    public int day;

    public void setDate(int y,int m,int d) {
        year = y;
        month = m;
        day = d;
    }
    public void printDate() {
        System.out.println( year + "年" + month + "月" + day + "日 ");
    }
    public static void main(String[] args) {
        Date date = new Date();
        date.setDate(2023,11,11);
        date.printDate();
    }
}


 原来:

 现在:形参名不小心与成员变量名相同

 再来看看打印结果

接下来就可以使用this 这个方法


 4.2 this的使用

 

 


即使写了很多个,系统都可以自动识别出 :


4.3 this引用的特性


五.对象的构造及初始化 

5.1 默认初始化

为什么局部变量在使用时必须要初始化,而成员变量可以不用呢?

 

 所以它们都有默认值

5.2 就地初始化

 在声明成员变量时,就直接给出了初始值。


5.3 构造方法(重点)

 



假如只写了一个构造方法:

 这里由一个编写构造方法的快捷方法,就不用一个一个输入:

或者直接用快捷键alt+insert 想创建几个就可以创建几个

总结:  

明天更新 【Java SE】封装

如有不足之处欢迎补充交流

看到这里的友友们,支持一下博主,来个免费三连,感谢! ! !

举报

相关推荐

0 条评论