JAVA面向对象学习

面向过程(Process-Oriented Programm,POP)思想思考问题时,首先思考“怎么按步骤实现?”,是一种“执行者思维”,解决简单的问题可以使用面向过程。

面向对象(Object-Oriented Programming , OOP)思想思考问题时,首先思考“怎么设计这个事物?”,是一种“设计者思维”,解决复杂、需要协作的问题可以使用面向对象,可以帮助我们从宏观上把握、从整体上分析整个系统。

              都是解决问题的思维方式,都是代码组织的方式。

面向对象离不开过程:宏观上:通过面向对象进行整体设计

                                    微观上:执行和处理数据,仍然是面向过程

面向对象编程(OOP)

面向对象编程的本质就是:以类的方式组织代码,以对象的组织(封装)数据。

三大特性:封装,继承,多态 

从知识论角度考虑是先有对象后有类。对象,是具体的事物。类,是抽象的,是对对象的抽象

从代码运行角度考虑是先有类后有对象。类是对象创建的模板

 类:一类具有相同特性的事物的抽象描述。可以看作是一个模板或者图纸,系统根据类的定义来造出对象  ,  class

       对于一个类来说,一般有三种常见的成员,属性、方法、构造器constructor

public class TestClassObject {
    public static void main(String[] args) {
        //创建Teacher类的对象
        Teacher t1 = new Teacher();
        t1.name = "宋老师";
        t1.gender = '男';
        t1.teach("JavaSE");

        //创建另一个Teacher类的对象
        Teacher t2 = new Teacher();
        t2.name = "柴老师";
        t2.gender = '女';
//        t2.age = 18;//错误,因为Teacher类中没有age这个属性,特征
                    //类模板中没有的东西,对象也没有,也不能用
        t2.teach("JavaSE");

    }
}

//类,声明了一个Teacher类,它代表了所有老师的共同特征
class Teacher{
    String name;
    char gender;

    void teach(String course){
        System.out.println(name + "讲授" + course +"技术,他是"  + gender + "老师");
    }
}

 对象:可以看成该类的一个具体实例,object , instance(实例)

 属性:用于定义该类或该类对象包含的数据或者说静态特征 , field

public class SxtStu {
    //属性
    int id;
    String sname;
    int age;

    //方法
    void study(){
        System.out.println("我正在学习,正在敲代码,正在听课!不要打扰我!");
    }


    //构造方法(方法名和类名保持一致!)
    SxtStu(){
    }

    public static void main(String[] args) {
        SxtStu S1= new SxtStu();
        System.out.println(s1,id);
        System.out.println(s1,sname);
    }
}

          在定义成员变量时可以对其初始化,如果不对其初始化,Java系统默认的值对其初始化。

 方法:用于定义该类或该类实例的行为特征和功能实现,method

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值