面对对象
简单理解面向对象
面对对象我们首先要知道什么是什么对象(不是处对象哦),对象是一个具体的实体,例如:某一个人就是一个对象,他有具体的属性,他有一个大鼻子或者是小鼻子,他长的帅或者不帅,而他具有的特征就是他自身的属性,而他却属于人这个类里的一个实例。
面向对象的思想
作为面向对象的思维来说,当你拿到一个问题时,你分析这个问题不再是第一步先做什么,第二步再做什么,这是面向过程的思维,你应该分析这个问题里面有哪些类和对象,这是第一点,然后再分析这些类和对象应该具有哪些属性和方法。这是第二点。最后分析类和类之间具体有什么关系,这是第三点。
面向对象有一个非常重要的设计思维:合适的方法应该出现在合适的类里面
简单理解类
简单来说,人民币和美元以及欧元都是属于'钱'这个类,而人民币与美元都是'钱'这个类的的一个实例也就是对象,它们继承'钱'同时具有'钱'这个类拥有的的功能-->购买东西。可以说'钱'是人民币以及欧元等抽象出的一个类。
java是面对对象的程序设计语言,java语言的提供了定义类,成员变量,方法等最基本的功能。
java也支持面向对象的三大特征:封装、继承、多态(其实应该还有个接口)。
/** *创建一个类 *创建一个类的语法: * [修饰符] class 类名 * 如下: */ public class ClassTest { }
修饰符可以是public、final、abstract,或者完全省略这三个修饰符,类名只要是一个合法标示符即可,对一个类的定义而言,可以包括三种最常见的成员:构造器,成员变量和方法(构造器也被称为构造方法),三种成员都可以定义零个或者多个。
java中的访问修饰符
对象的定义:
/** *创建一个类 *创建一个类的语法: * [修饰符] class 类名 * 如下: */ public class ClassTest { //***************变量******************* //定义一个成员变量 //public private protected 三种修饰符只能出现一个 //也可以用final 与 static 去修饰 private Integer num = 1;//修饰符 类型 成员变量名 赋值 1 public static final Integer SYSTEM_CODE = 10010; //***************方法******************* //定义一个无返回值类型的带参方法 //修饰符为public 返回值void(无) 方法名add 行参为userName public void add(String userName){
System.out.println("我是--->"+userName);
} //定义一个静态的无返回类型的名为update的方法 public static void update(){} //定义一个修饰符为protected 返回值为 String类型的名为findData的方法 protected String findData(){ return "我是返回数据!"; } //***************构造器******************* //创建一个无参构造器 public ClassTest(){} //创建一个参数类型为integer的构造器 public ClassTest(Integer num){
//这里的this 指代的是本类,也就是ClassTest的引用 this.num = num; } }
对象的产生和使用
调用方法或者成员变量语法是 : 对象.方法()/对象.变量
//创建对象的关键字为new //对象创建的引用可以是自己也可以是父类 //第一个是一个无参构造 ClassTest c1 = new ClassTest(); //第二个是带参的构造方法 ClassTest c2 = new ClassTest(1000); //创建对象后根据权限修饰符可以调用想用的成员变量 和 方法 System.out.println(c1.findData());//打印 “我是返回数据!” System.out.println(ClassTest.SYSTEM_CODE);//调用静态成员变量
c2.add("张三");//这里打印 我是----->张三
//我们也可以自己写一个类 自己去摸索下权限修饰符,以及构造器与创建对象实例的关系、以及行参的使用,
面对对象的优点:
1.与人类的思维习惯一致
2.隐藏信息,提高了程序的可维护性和安全性
3.提高了程序的可重用性(这个很重要哦,在面向对象的代码中代码的复用可是很关键的)
使用类的关键步骤:
1.定义类:使用关键字class
2.创建类的对象:使用关键字new、
3.使用类的属性和方法:使用 " . "操作符