⚔疯狂输出⚔面向对象核心思想。

面向对象,只要是在大学里学过c语言的都知道,在大学的第一趟c语言课程老师都会讲c语言是面向过程的然后会简单的说个例子。然后再说c++是面向对象的语言再简单的举个例子。
我们Java也是面向对象的语言。接下来我也会举很多的例子。来验证,会剖析一下到底什么事面向对象。
例子一,在你吃饭的时候没有筷子你会怎么办? 自己去拿?找别人去拿?当然也可以不拿直接手抓。
但是大部分人会自己去拿,当自己去拿筷子的这个过程到拿到筷子可以吃饭了。就解决了你吃饭没有筷子这个问题。 这个解决问题的方法就是我们c语言面向过程的解决方法。

那面向对象是怎么个过程呢?就是我们自己不去拿筷子,我们还可以拿到筷子,并且吃饭。那我们会怎么解决呢?叫别人拿,让别人来解决我们没有筷子的这个问题。这个 个解决问题点方法就是面向对象的解决方法。

面向对象的核心思想,寻找一个对象,使用这个对象去解决问题。所以这个对象就是重点。能不能解决问题就在于我们能不能找对对象。

面向对象的特点
1,把复杂的问题简单化。就拿我们吃饭没筷子来举例子。我们让别人拿自己省了很多事。
2,懒人思想。
3,自己不想拿,叫别人拿,角色的转换。从一个执行者的角色,转化成指挥的角色。

面向对象设计方向
Java这门面向对象的语言是怎么设计的呢?
1,维护类和对象之间的关系是这门语言的核心。
2,不断的操作对象,使对象实现不同的功能。

哪有那些元素组成了面向对象呢?
最基本的元素 一个 类!
类是什么呢?
举个例子。比如上面拿筷子的例子。你遇到了这个问题,这个问题就是一个类。不同的问题有不同的类型。
哪类是什么组成的呢?
类是由不同对象组成的。比如说你拿筷子的问题,让谁拿?姓名:那什么样的筷子?筷子型号:
去哪里拿?地点:
姓名:
筷子型号:
地点:
这都是对象。
对象就是由类创建出来的具体事物。
那我们来写一下类中的类型分哪几种
成员变量:相当于是个属性
比如:姓名 筷子型号 地点。
那就是说使用名词来描述事物的属性
成员方法:相当于是个行为
比如:让某某人拿这个人去拿就是一个方法。
那就是说使用动词来描述事物的行为

面向对象的特征?
封装
多态
接口

接下来我们声明一个类。


public class WorkDemo02 {
 public static void main(String[] args) {
        //在内存中开辟一块空间
        Music stu = new Music ();
        // 成员变量
        stu.name = "姓名";
        stu.type = "曲风";
        stu.number ="歌名";
        System.out.println(stu.name);
        System.out.println(stu.type);
        System.out.println(stu.number);
        //成员方法
        stu.name();
        stu.type();
        stu.number();
}
}
class Music{
     String name;
     String type;
     String number;
     public void name() {
         System.out.println("祥");

    }
     public void type() {
         System.out.println("激情似火");
     }
    public void number() {
        System.out.println("敢爱敢做");

    }

}

一个对象在内存中的表现
这里写图片描述

对象的封装
把属性和方面具体实现给隐藏起来。只开放公共访问方法
用private (权限修饰符)把所需要隐藏的对象,或类权限改为私有的
属性添加:private 变成私有属性
//私有属性 本类中可以访问到 出了本类就访问不到了
封装的第一步结束
用 get/set
获取值 get.方法的名字
修改值 set.方法的名字
封装完成、接下来我们写一个。

public class Demo03{
public static void main (String[]agrs){
//get/set  私有化
Rrct number = new Rect ();
number.setHeight1();
number.setWidth();
  }
}
//定义一个类
 class Rect{
//私有化
private int height;
private int width;
//构造方法
//无返回值类型
public Rect(){
}
public Rect(int height,int width )
//获取成员变量
this.setHeight1(height);
this.setWidth(width);
}
//get / set方法
public void setHeight(int height){
this.setHeight1(height);
}
public int getHeight(){
return this.height;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值