super只能用在构造方法里面吗?】的更多相关文章

package com.bjpowernode.t02inheritance.c09; /* * 使用super调用父类的构造方法 */public class TestSuper02 { public static void main(String[] args) { IPhoneX iPhoneX1 = new IPhoneX(10); IPhoneX iPhoneX2 = new IPhoneX(); // System.out.println(iPhoneX.color);// Syst…
super Super()表示调用父类的构造方法.如果没有定义构造方法,那么就会调用父类的无参构造方法,即super(). this 在构造方法中,this表示本类的其他构造方法:student(string n){ this();      //this表示调用这个类的student()                         }如果调用student(int a)则为this(int a).特别注意:用this调用其他构造方法时,this必须为第一条语句,然后才是其他语句. clas…
问题简介   今天在看<Java编程思想>的时候,看到了一个很特殊的语法,懵逼了半天--一个派生类继承自一个内部类,想要创建这个派生类的对象,首先得创建其父类的对象,也就是这个内部类,而调用内部类的构造方法创建其对象的语法,是外部类对象.super(); 问题分析   我们都知道,在Java当中,当我们创建一个类的对象时,在构造方法的第一行会默认的调用父类的构造方法,创建一个父类的对象,并用super关键字引用父类的对象.所以若一个类,它继承了一个内部类,那我们创建这个类的对象前,当然也必须创…
1.以下关于面向对象概念的描述中,不正确的一项是() A.在构造方法中,this()只能出现在构造方法第一行位置 B.在构造方法中,super()只能出现在构造方法第一行位置 C.this()和super()可以同时出现在同一个构造方法中,this()指代调用本类中其他构造方法,super()指代调用父类构造方法 D.this()和super()不能同时出现在同一个构造方法中,否则编译器会报错 答案:C 解析:this()和super()不能同时出现在一个构造函数里面,因为this()和supe…
继承(extends): 1.作用:为方法覆盖和多态机制做准备:使代码得到复用(节省代码量): 2.格式: class 子类 extends 父类 3.理解继承:子类继承父类,其实就相当于把父类的类体中的所有代码(除了构造方法)复制,粘贴到子类的类体里: 4.当一个类没有继承父类时,将默认继承object类,object类为Java语言提供的" 祖宗 "类 ":Java中所有类都会直接 / 间接继承object类,因为即使一个类继承了其他父类,但是它的父类或者父类的父类...…
1.构造方法的重载是指同一个类中定义不同参数的多个构造方法,已完成不同情况下对象的初始化. 例如: Point(); Point(x); Point(x,y); 2.一个类的若干个构造方法之间可以相互调用,当类的构造方法需要调用另一个构造方法时,可以使用关键子 this();括号可以带参数或不带参数,并且这个调用语句必须是这个构造方法的第一个可执行语句. 例如: class Sun { Sun(int a){ System.out.println("Hello this is week &quo…
1.实例变量和类变量 实例变量:指每个对象独立的,修改其中一个对象的实例变量,不会影响其他实例变量的值,变量值无 static 关键字修饰: 类变量:是指所有对象共享的,其中一个对象把该变量的值修改了,那么所有对象的该变量的值都修改了,使用 static 关键字修饰,一般使用 「类名.属性」 来访问: 2.静态方法和非静态方法 静态方法:是指使用 static 关键字修饰修饰的方法,一般使用 「类名.方法」 来访问,也可以通过 「对象.方法」 来访问,但是不建议这样写!静态方法中只能调用静态方法…
接收键盘的输入:1.创建一个键盘扫描器对象 java.util.Scanner s=new Scanner(System.in); 2.接收用户输入s.nextInt(); 静态变量在类加载的时候就分配内存了,实例变量在对象创建时才会分配内存,静态代码块和静态变量都是在类加载的时候执行,所以要按顺序执行 静态代码块在类加载的时候执行且只执行一次,实例代码块在每执行一个构造方法执行之前就执行一次,静态变量在类加载时赋初值,实例变量在创建对象时赋初值 继承:(作用:可以实现方法的重复使用,但最重要的…
为什么经常会遇到有的构造函数会有super(),而有的却没有,其实super就比如 对数函数,log的底数为10,如果为10 ,我们可写可不写,如果不为10,那么我们就要加上底数 在子类构造方法中,super();是默认省略的,(super();的作用是继承父类构造方法).记住:默认省略不是不存在,而是存在,不过被省略了. 因为super();存在,所以如果父类是有参构造方法,那问题就出现了,因为子类的构造过程中必须调用父类的构造方法,如果有参,那么不能省略.就要自己调用父类有参构造方法. 要讲…
1 构造方法 1.1 构造方法Constructor概述创建对象要明确属性值,此时需要用到构造方法,即对象创建时要执行的方法,用来给对象的属性进行初始化.在new对象时,知道其执行的构造方法是什么,就可以在执行这个方法的时候给对象进行属性赋值.Perons p = new Person("张三",23); 在new的时候给p对象的name属性和age属性进行赋值,使这个对象的属性有值.构造方法没有返回值类型,也不需要写返回值.因为它是用来构建对象的,对象创建完方法就执行结束.格式特点:…