黑马程序员_java基础——面向对象2

黑马程序员
------- android培训java培训、期待与您交流! ----------

 

在函数中一个基本数据类型作为实参传递给一个方法函数自身取值是不会被改变的;

一个引用型数据类型作为参数来传递给一个方法是可以改变其所指向的对象中的成员的;

如果是一个数组作为参数进行传递跟引用型数据类型是一样的;

static 静态变量

当我们描述一个类时就是描述事物的属性和行为,并没有产生一个具体的实例,需要通过new操作符来建立一个对象提供给外部调用;

当一个变量或者方法,在对象产生时就有,并且与其他一个或多个对象共有时,我们就可以将这个变量定义为静态变量用static关键字来修饰;

被static所修饰可以提高代码的复用性、节省空间、并且可以直接用类名来调用,不需要建立实体对象就可以被外部所调用;

总结:本类中的成员可以直接访问被static修饰的成员 也可以直接访问被private修饰的成员

被static修饰的方法只能访问同类中被static修饰的成员,并且不能以任何方式引用this和super因为:

静态在调用时不需要建立实例对象,而非静态在调用时需要先建立实例对象。所以当调用静态方法时,this所引用的对象根本就没有产生

静态代码块:

当一个类被加载便会加载这个类中的静态代码块中的代码

继承:

简化了定义的代码,java只支持单继承不支持多继承但可以多层继承子类继承父类所有的成员变量和成员方法但不继承父类的构造函数子类调用父类的构造函数可以使用super

this和super不能同时出现在一个构造函数中并且都智能位于构造函数的第一行

final被final修饰的的类不可被继承是最终类,final可修饰类、变量、函数。

被final修饰的变量可以是成员变量也可以是局部变量,被final修饰后是一个常量只能赋值一次要么在初始化进行赋值要么在每一个构造函数中进行赋值如果这个变量被static修饰则不能再构造函数中进行赋值,所有字母大写通过“_"来连接

被final修饰的函数是最终版不能再被复写只能继承

抽象abstract:

抽象方法和抽象类必须被abstract所修饰,抽象方法必须在抽象类中,抽象类不可以new一个对象抽象类中的方法要被调用子类必须复写其所有的抽象方法

接口:

如果一个类中的所有方法都是抽象的我们可以用龄另一种表现形式interface,接口也是一种抽象类只包含常量和方法的定义而没有变量和方法的实现

接口中的成员都有固定的修饰符public常量;public static final,方法:public abstract;

接口可以被继承extends也可以被实现implement;

一个类在继承(extends)一个接口的同时可以实现(implements)一个或多个接口

多态:

某类事物多种存在形式;

多态的体现:

父类的引用可以接受子类的对象也可以指向子类的对象;

多态的前提:

类与类之间存在关系要么继承要么实现通常还有一个前提存在覆盖;

多态的好处:

大大提高了程序的扩展性;

多态的弊端:

提高了扩展性但只能使用父类的引用访问父类的成员;

多态的转型:

可以向上转,也可以向下转。但是不要将父类对象转化成子类类型,我们能转的是父类引用指向自己的子类对象时,该应用可以被提升也可以被强制转换,自始至终都是子类在做着变化;

多态中成员函数的特点:

在多态被调用时,编译看左边,运行看右边;

多态中成员变量的特点:

五路编译或运行都只看左边静态成员函数也一样;

异常:

程序在运行时出现的除语法错误外的非致命的错误,用Exception来声明try{}catch(){}来处理

严重的用Error来表示不做处理

finally{}中放一定要执行语句,通常定义关门闭数据;

throw和throws的区别:

throw使用在函数内后跟的是异常对象,throws使用在函数上后跟的是异常类

异常中的特殊异常:

RuntimeException运行时异常;如果函数上声明了该异常可以不用进行处理;

 

黑马程序员
------- android培训java培训、期待与您交流! ----------

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值