参考文章:
https://www.cnblogs.com/hysum/p/7100874.html
https://www.cnblogs.com/hansheng1988/p/3721290.html
1.封装
将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问。
1.1对属性的封装
1.2对方法的封装可以通过访问修饰符号
1.3.内部类( Inner Class )就是定义在另外一个类里面的类。与之对应,包含内部类的类被称为外部类。)
成员内部类
静态内部类
方法内部类
匿名内部类
匿名类是不能有名称的类,所以没办法引用他们。必须在创建时,作为new语句的一部分来声明他们。但使用匿名内部类还有个前提条件:必须继承一个父类或实现一个接口。
2.继承
继承是类与类的一种关系,子类拥有父类的所有属性和方法(除了private修饰的属性不能拥有)从而实现了实现代码的复用。
2.1.方法的重写(子类如果对继承的父类的方法不满意(不适合),可以自己编写继承的方法,这种方式就称为方法的重写。当调用方法时会优先调用子类的方法)
a、返回值类型
b、方法名
c、参数类型及个数
都要与父类继承的方法相同,才叫方法的重写
2.1.子类中对方法的重载和扩展
注意: final 修饰类,则该类不允许被继承, final 修饰方法,则该方法不允许被覆盖(重写),final 修饰变量,则该变量的值只能赋一次值,在声明变量的时候才能赋值,即变为常量。
3.多态(继承是多态的基础,无继承也就没有多态,只允许单继承,这样做虽然保证了继承关系的简单明了,但是功能上有很大的限制,所以,Java引入了多态性的概念。此外,抽象类和接口也是解决单继承规定限制的重要手段。同时,多态也是面向对象编程的精髓所在)
3.1.引用多态
父类的引用可以指向本类的对象:
Animal animal=new Animail();
父类的引用可以指向子类的对象:
Animail dog=new Dog();
3.2.方法多态
父类的引用可以指向本类的对象:
Animal animal=new Animail();
animal 只能访问父类Animail本类的非private属性和方法
父类的引用可以指向子类的对象:
Animail dog=new Dog();
dog只能访问访问父类中的非private属性和继承以及重写的方法(子类有重写父类的方法,调用时,先调用子类重写的方法,没有重写则调用父类)
注意:如果我们在子类中编写一个独有的方法(没有继承父类的方法),此时就不能通过父类的引用创建的子类对象来调用该方法!!!
多态也有弊端:当父类引用指向子类对象时,虽然提高了扩展性,但是只能访问父类中具备的方法,不可以访问子类中特有的方法。(前期不能使用后期产生的功能,即访问的局限性)
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
Android面试参考
1.40个比较重要的Android面试题https://www.cnblogs.com/WangQuanLong/p/5826098.html
2.java基础:http://blog.csdn.net/huangqili1314/article/details/79448187
3.android高级面试题:https://www.cnblogs.com/deman/p/5860976.html
4.okHttp的用法:http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0106/2275.html