如何简单理解面向对象

java面向对象(object oriented)

面向过程解决问题?

*以c语言为例的面向过程解决问题的方法:
第一步….
第二部….
…….
完成得到结果

面向对象解决问题?

*在java中 找对象,有了对象,可以直接调用所有关于这个对象的解决问题的方法,这个方法被封装在类中,对于我们来说是“透明”的。

[例如]

OO思想: 想吃煎饼果子怎么办?
a.去找卖煎饼果子的阿姨
b.给钱
c.阿姨做煎饼果子—————-“透明的步骤”
d.拿到,可以吃了

在此过程中的c步骤,对于我们来说不需要知道,体现了面向对象的一大特征:封装(encapsulation)。

. 理解面向对象思想特点:
* a:是一种更符合我们思想习惯的思想
* b:可以将复杂的事情简单化
* c:将我们从执行者变成了指挥者

  • [实例]
  • 面向对象(学生类)
    • A:学生事物
    • B:学生类
    • 属性:姓名,年龄,性别
    • 行为:学习,睡觉
关于学生类思考:
 在一个班级中,学生是一个集合,他们有着自己的姓名、桌子、书本,这些就是学生共有的特点,称作为学生类所必有的属性。同时,作为学生需要写作业、听老师讲课、睡觉,这些是同学都有的动作或状态,可以称作是学生类所必有的方法。
学生中有张三、李四...等等,为了方便管理,假设拟定一个学生实体,给他一个代号a,他有着学生的所有属性,能够做到所有学生可以做的事,称他为学生类的一个对象。

【代码实现】
定义一个类:

class Student{
    String name;  //属性
    int age;  //属性

    public  void sleep(){       
     //学生睡觉的动作
            System.out.println("睡觉");
        }
    public  void study(){        
    //学生学习的动作
       System.out.println("学习");
        }
    public void setName(String name){  
    //起名字的方法
        this.name =name;    
    }
    public  void setAge(int age){    
    //登记年龄的方法   
        this.age = age;
    }
    public String getName(){
    //得到该学生姓名的方法
        return  name;
    }
    public int getAge(){
    //得到该学生年龄的方法
        return age;
   }  

如何使用一个对象:

public static void main(String[] args) {   //main函数,程序的入口

Student  a = new Student(); 
 // 新建一个学生类的对象,给他一个代号 a
a.sleep();       // a 代表的学生睡觉
a.study();       // a 代表的学生学习
a.setName("李四"); // 给 a 起了名字
a.setAge(12);     //给 a 登记年龄12岁
int age = stu.getAge(); // 得到年龄
String name = stu.getName(); //得到姓名
System.out.println("小a这个学生的名字叫"+name);
 // 输出 a 学生的名字
System.out.println("小a这个学生的年龄是"+age);
//输出 a 学生的年龄

}
总结:
  • 使用面向对象的方法解决问题就是不断的创建对象,使用对象,指挥对象做事情。
  • 希望通过简短的描述,对初学者理解面向对象有一定帮助。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值