smallTest

/////////////////////////2016-11-7//////////////////////////

int test(){

1.请说明一个JAVA类中主要包含哪几个元素?并说明每种元素的作用。

    JAVA类中主要包含属性、方法、构造方法、块以及内部类。属性用来定义对象的数据;方法用来定义对象的行为;构造方法可以用来创建对象;块能够用来在类加载时执行操作或者在每次实例化前执行通用操作;内部类作为类的一个成员存在,能够访问外部类的属性和方法。

2.请说明构造方法的作用和特征

    构造方法的作用是用来创建对象,使用new关键字调用。构造方法的名字必须与类的名字相同,并且大小写敏感,同时构造方法不能声明返回值类型,可以使用任意一种访问修饰符,但是不能使用其他修饰符进行修饰,如static、final、abstract等修饰符都不可以修饰构造方法。

3.请列举Java语言中的权限访问修饰符,并说明每种权限的含义。


下表为Java访问控制符的含义和使用情况

                          类内部     本包内    类    外部包

 public                  √              √           √          √

protected            √              √           √          ×

default(默认) √              √           ×          ×

private                √              ×            ×          ×


4.什么叫引用类型,引用类型和基本数据类型有什么区别?

     Java语言中除了基本数据类型之外的类型,都称为引用类型。引用类型就是类的类型,所有的对象都是引用类型,包括数组对象。引用类型必须使用new调用构造方法进行赋值,引用类型的变量拥有自己的属性和方法,可以使用圆点调用自己的属性和方法。基本数据类型直接使用=号进行赋值,且没有自己的属性和方法,往往都在声明属性或方法时使用。

5.请说明Java语言中的值传递规则。

     基本数据类型传递的是值,引用类型传递的是引用,即虚地址。

6.使用static修饰属性或方法后,属性和方法有什么特征?

     static修饰属性或方法后,属性和方法不在属于某个特定的对象,而是所有共享,也可以说是static成员不依赖某个对象,在类加载时就被初始化。Static修饰的属性或方法,可以直接使用类名调用,而不用先实例化对象再调用。

7.使用final修饰属性后,属性有什么特征?

     fianl修饰属性后,属性就成为一个常量。常量只要被赋值,就不能被改变。

8.继承有什么作用,Java语言中的继承有什么特点?

     继承主要为了能够重复使用父类中的成员。Java语言中的继承是单继承,也就是说一个类最多只能继承一个父类。

9.什么是方法覆盖(override)?并说明方法覆盖与方法重载(overload)的区别。

     覆盖是发生在继承关系的子类中,当子类要修改从父类继承的某个方法的方法体时,就可以在子类中声明一个与父类同名、同参数并且同返回值类型的方法,这就是方法覆盖。而重载与继承没有关系,指的是在一个类中可以同时声明多个同名但不同参数的方法,称为重载。

10.请说明什么是抽象类?抽象类有什么作用?

     抽象类是不能实例化的类,使用abstract修饰。抽象类往往用来做父类使用,定义一些子类的共同属性或行为。

11.请说明抽象方法的含义,并说明抽象类与抽象方法的关系。

     抽象方法是没有方法体的方法,使用abstract修饰。抽象类中不一定有抽象方法,但是有抽象方法的类一定是抽象类。

12.说明super关键字的两种用法。

      super():表示调用父类中的构造方法:又如super(10);表示调用父类中的具有一个整型参数的构造方法。第二种用法是在子类中调用父类中的成员,如super.f();意思是调用父类中的f()方法。

13.说明什么情况下使用this关键词?

     第一种情况是当我们想要调用当前对象的属性或者方法时候,可以通过this关键字来调用;第二种情况是当我们想调用当前对象的其它构造函数的时候,可以使用this关键字

14.final类与final方法有什么作用?

     final类是不能够被继承的类,称为终极类,如String类就是final类,不能有子类。final修饰方法后,是终极方法,不能被子类覆盖,但是可以被子类继承使用。

15.简要说明Object类有什么特点?

     Object类是所有类的直接或间接的父类。

16.Object类中的toString方法有什么用?

     toString方法可以把对象作为字符串返回。

17.简要说明Object类中的equals方法和hashCode方法。

     Object类中的equals方法用来比较两个引用值,hashCode用来返回引用的内地址的十六进制数值。在Set以及Map集合中,判断两个元素是否重复时,往往需要使用这两个方法。这两个方法往往被子类覆盖,覆盖的规则是:如果存在x和y两个对象,调用x.equals(y)返回true时,那么调用hashCode方法的返回值也该相同;如果x.equals(y)返回false时,那么调用hashCode方法返回的值可能相同,也可能不同。

18.接口有什么特点,与抽象类有什么区别?

     接口的特点是不能定义变量,而且所有方法都是抽象方法。而抽象类中可以有变量,也不强制必须有抽象方法。

19.类继承父类与类实现接口,有什么区别?

     类继承父类只是单继承,也就是一个子类最多只有一个父类;而类实现接口可以多实现,

就是一个子类可以同时实现多个接口,并覆盖所有接口中的所有抽象方法。

20.组合和继承各有什么特点?什么情况下使用组合,什么情况下使用继承?

     继承,父类与子类之间存在is-a的关系,子类可以调用父类的方法,创建子类时,无需再创建父类;组合体现的是整体与部分,拥有关系,即has-a的关系,是通过对现有的对象进行拼装(组合)产生新的、复杂的功能.因为组合更加安全、灵活、高效,所以在同等情况下,推荐使用组合。

21.说出至少3中Java面向对象的设计原则

1.单一职责原则

2.里氏替换原则

2.依赖倒置原则

4.接口隔离原则

5.迪米特法则

6.开闭原则

7.组合/聚合复用原则

22.说出3个你了解的设计模式,并用一两句话描述模式的应用场景

1.工厂方法模式:创建一个工厂类,对实现了同一接口的一些类进行实例的创建。

2.单例模式:保证一个对象在整个程序中只有一个实例存在。

3.适配器模式:将某一个类的接口转换成客户端期望的另一个接口表示,目的是消除兼容问题。

4.代理模式:创建一个代理类,替原对象进行一些操作。

5.观察者模式:当一个对象发生变化时,其它依赖该对象的对象会接收到通知。

6.迭代子模式:顺序访问聚集中的对象。

7.命令模式:使命令的发出者和执行者之间解藕,实现请求和执行分开。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,684评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,143评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,214评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,788评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,796评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,665评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,027评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,679评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 41,346评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,664评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,766评论 1 331
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,412评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,015评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,974评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,203评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,073评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,501评论 2 343

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,573评论 18 399
  • 一:java概述:1,JDK:Java Development Kit,java的开发和运行环境,java的开发工...
    ZaneInTheSun阅读 2,629评论 0 11
  • 1 面向对象No6 面向对象 OO Object Oriented 编程时以对象为单元,封装数据和逻辑,以此提...
    征程_Journey阅读 1,124评论 0 2
  • 1.import static是Java 5增加的功能,就是将Import类中的静态方法,可以作为本类的静态方法来...
    XLsn0w阅读 1,211评论 0 2
  • 个人感悟: 钱钟书的智慧,在这抄写的只言片语之中足见一斑。并非断章取义,只为书写历练一种精神境界,想想确实不错。
    燕无忧阅读 400评论 0 11