Java面向对象(一)
来源:互联网 发布:mmd怎么删除动作数据 编辑:程序博客网 时间:2024/05/21 14:06
·将功能封装进对象,强调具备了功能的对象
·java里面有对象用对象,没有对象,那么就创造对象,用对象,之后还要维护各种对象之间的关系
注意
1.面向对象强调 :具备了功能的对象,将功能封装进对象 2.OOP :object-oriented programming面向对象编程
3.面向对象的三大特征:封装、继承、多态
4.类(class)是抽象的,概念性的。对象(Object)是实实在在存在的,“看得见”,“摸得着”
5.对象也叫类的实例(instance)
6.面向对象编程的关键是类的设计
7.类的设计就是,设计类中包含的内容(类的成员)
8.对象的类型是类
9.先设计类,在通过类来创建出一个个的对象
10.通过类来创建对象,也可以说成使用类来实例化一个对象
11.对象跟类的实例化是一个意思
12.类不占内存,对象才占内存
类的成员
1.属性(成员变量、全局变量、Field)
2.方法(成员方法、成员函数、Method)
3.构造器
创建类的格式
[修饰符] class类名
{
属性
方法
}
类的修饰符:public abstractfinal 缺省
修饰符public:类可以被任意访问
类的正文要用{ }括起来
属性
格式:
[<修饰符>] 类型<属性名> [=初值] ;
注意:类型可以是任何基本类型,如int、boolean或任何类。也可以是引用数据类型
[<修饰符>]:
修饰符public: 该属性可以被本类以外的方法访问。
修饰符private: 该属性只能由本类的方法访问。
修饰符protected:
缺省
成员变量vs局部变量
相同点:
1.类型 名=初始值;
2.都有作用范围 {}
不同点:
1.定义的位置来说:
成员变量:类的内部,方法的外部
局部变量:方法的内部,形参,代码块
2.权限修饰符:
成员变量: public protectied 缺省 private
局部变量:无修饰符,跟所在的方法的修饰符一致
3.都有初始值:
成员变量:可以不显示的指定初始值,系统会分配默认的初始值
byte\short\int\long\→ 0
char→ 空
floatdouble → 0.0
boolean → false
引用类型 → null
局部变量:必须显示的指定初始值,系统不会分配默认的初始值
4.内存中的位置:
成员变量存储在堆中!
局部变量存储在栈中!
总结:变量的分类
按类型分:基本数据类型和引用数据类型
按位置分:局部变量和成员变量
public String name;private String sex;protected int age;//方法public void eat(){ int i=9;//局部变量System.out.println("eating");}public void walk(){System.out.println("walking");}}
创建对象
使用关键字 new +构造器
Personp1 =new Person();
System.out.println(p1);
使用对象名.属性
对象.方法的方式来调用属性跟方法
p1.walk();p1.eat();p1.age=30;p1.name="韩超";p1.sex="男";System.out.println(p1.age);System.out.println(p1.sex);System.out.println(p1.name);
匿名对象
1.我们也可以不定义对象的句柄,而直接调用这个对象的方法。这样的对象叫做匿名对象,如:new Person().shout();
2.如果对一个对象只需要进行一次方法调用,那么就可以使用匿名对象。
3.我们有时会将匿名对象作为实参传递给一个函数调用。
//1new1世界new Person().eat();new Person().walk();Person p2 =new Person();testNiMing(p2);
//将匿名对象作为实参传递给一个函数调用。public static void testNiMing(Person person){person.eat();}
面向对象的三大特性: 封装、继承、多态
- java面向对象(一)
- Java 面向对象(一)
- java面向对象(一)
- Java面向对象(一)
- java面向对象(一)
- Java面向对象(一)
- Java面向对象(一)
- java面向对象(一)
- JAVA面向对象(一)
- Java 面向对象(一)
- JAVA面向对象(一)
- Java面向对象(一)
- java面向对象(一)
- Java面向对象(一)
- java面向对象(一)
- Java面向对象(一)
- java 面向对象一
- java 面向对象 一
- ObjectAnimation
- JS基础--with改变作用域
- 山路弯弯需坚持之jQuery EasyUI (一)
- mysql不能插入中文数据
- my sql 入门教程 5.6
- Java面向对象(一)
- 给xml文件增加DTD头
- SparkMLib学习第二部分
- Android 下拉框Spinner
- SQL学习之:INTERVAL YEAR TO MONTH 和 INTERVAL DAY TO SECOND
- 上传图片,多图上传,预览功能,js原生无依赖
- Charles Proxy for Mac & Windows (4.0.2)破解激活工具
- Linux网络编程学习笔记-socket编程3--5
- zTree树的生成