码迷,mamicode.com
首页 > 编程语言 > 详细

Java基础——面向对象

时间:2018-09-05 23:58:11      阅读:303      评论:0      收藏:0      [点我收藏+]

标签:bst   nbsp   返回值   http   不清楚   常量   今天   ora   不能   

Hello 大家好,我又来啦,今天我们来说说Java的面向对象。

还记得之前去面试几家公司的实习生职位,大部分面试官都问过我有关面向对象 的问题,不知道以后还会不会问,估计是不会了吧。。。(:3[▓▓]

下面我们来说正事!(? ? ?)?

 

面向对象特点有四个——封装、继承、多态、抽象

 

封装:

封装的概念:方法的调用者并不清楚方法的具体业务逻辑,只有方法的实现者才清楚方法的具体实现。

封装的理解:Java将相关变量和方法封装到类中,通过可见性实现封装。

可见性有四个关键字:

1.private:当前类可见

2.protected:当前类&本包可见

3.default:(默认)当前类&本包&外包子类可见

4.private:都可见

class的可见性要么是public,要么是本包可见

一般情况下都是方法公有化(public)属性私有化(private)

 

继承:

继承的概念:子类可以继承父类所有属性和方法,但是由于可见性的原因,子类只能使用所有父类的非私有化属性和方法(构造器除外)。

※要注意继承是单向的,不可以互相继承

 

多态:

多态就是重写和重载了,区别就是重载和参数有关,重写和对象有关

重载方法可以发生在两个类中,也可以发生在一个类中,方法名一致,参数类型不同,与返回值无关。

重写一定发生在两个类中,方法名一致,参数类型一致,方法返回类型一致,返回类型一致。

 

 1   //方法test体现重载  方法testTest体现重写
 2  public class A {            
 3      public void test(int a){
 4           return "a";  
 5      }   
 6 
 7      public void test(long a){
 8           return "aa";  
 9      }     
10  
11      public void testTest(int b){
12         return "b";  
13     }
14  }
15  
16  public class B extends A{
17      public void testTest(int b){
18         return "bbbbbb";  
19     }
20  }

 

 

抽象:

抽象的概念包括接口和抽象类。

public interface A{}

接口特点:不能实例化对象

      只有常量

      只有抽象方法,没有普通方法

        一定被实现

        接口是特殊的抽象类

 悄悄告诉你(`?ω?′) :一个类可以实现多个接口  ||  抽象类可以实现接口  ||  接口可以继承接口  ||  不能实现接口)

 

public abstract class A{}

 

抽象类特点:不能实例化对象

      有构造器(有成员变量,需要初始化化)

      可以有常量&变量

      可以有普通方法&抽象方法

      一定被继承,实现就得重写抽象方法

抽象类的优点:可以被多次♂利用。

抽象方法一定在抽象类中,抽象类中不一定有抽象方法。

 

 

 好了! 以上就是目前我在Java面向对象方面的小小见解了!希望能够帮到大家!
 我们下期再见!

 技术分享图片

 

Java基础——面向对象

标签:bst   nbsp   返回值   http   不清楚   常量   今天   ora   不能   

原文地址:https://www.cnblogs.com/guojia314/p/9595192.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!