`
卿黛如画
  • 浏览: 13474 次
  • 性别: Icon_minigender_2
社区版块
存档分类
最新评论

关键字总结

 
阅读更多

1、访问限定符
 修饰:修饰类、属性、方法、构造方法
 限定的范围:项目、包、类
 包括:  public  同一个项目
  protected 同一个包、(相同包或不同包)子类
  默认的  同一个包
  private  同一个类
 注意点:private 修饰类时,只能在内部嵌套使用
  在子类中方法被重写时,不可减小访问限定符

2、this
 作用:  表示当前正在被操作(调用)的对象
     在构造方法中调用本类的某一个构造方法
 注意点:在构造方法中调用构造方法,必须在第一行

3、super
 作用: 本类的父类对象(常用在在子类中调用父类方法时)
    在子类的构造方法中调用父类的构造方法
 注意点:在构造方法中调用构造方法,必须在第一行

4、this与super的区别:
 (1)属性:访问本类中的属性,本类没有则从父类中访问;直接访问父类中的属性
 (2)方法:访问本类中的方法,本类没有则从父类中访问;直接访问父类中的方法
 (3)构造:调用本类的构造方法,必须放在构造方法的首行;调用父类的构造方法,必须放在子类构造方法的首行;
 (4)特殊:表示当前对象;表示本类的父类对象

5、final
 使用final声明 :类---不能有子类,不能被继承
                        方法----不能在子类中被重写
                        属性----变量变为常量,不能被修改
     注意点:常量只能被赋值一次
                 全局常量:static final声明的变量

6、static
 (1)程序运行过程:
  装载类:static声明的属性、代码块执行(static声明的方法在被调用时执行)
  创建对象:非静态属性、代码块执行
 (2)声明属性: 全局属性,一个属性可以被对象所公用
             修改一个对象的属性,其他对象的属性全部改变
             对象.属性  相当于   类.属性
 (3)声明方法: 只与对象的类型有关
             没有static声明的方法:先看其类中是否有对应的方法,再看对象:new 类 ();这个类
 (4)声明类:   可声明内部类,然后用外部类.内部类的形式使用
          注意点:static属性、代码块在对象没有实例化时就可以调用和执行了
     static代码块:在装载时初始化数据
       非静态代码块:在对象实例化时初始化数据(不常用)

7、代码块(补充)
 {}的部分
 包括: 普通代码块:直接定义在方法中的代码
  构造块:将代码块定义在类中
   构造块优先于构造方法执行
   只要实例化对象产生,就执行构造块
  静态代码块:直接使用static声明的代码块
       不论实例化多少次对象,只执行一次
         为静态属性初始化
  同步代码块
 优先顺序:在主方法所在类中定义的静态代码块——主方法——
    ——普通类中的静态代码块——构造块——构造方法

8、ABC练习的总结与扩展

public class A {
	public A(){
		System.out.println("A");
	}
}
public class B extends A{
	public B(){
		System.out.println("B");
	}
}
public class C {
	public static A a = new A();
	public B b = new B();
	public C(){
		System.out.println("C");
	}
	public static void main(String[] args) {
		C.change();
	}
	public static void change(){
		B b1 = new B();
	}	
}

 运行结果: A

                    A

                    B


 

public class A {
	public A(){
		System.out.println("A");
	}
}
public class B extends A{
	public B(){
		System.out.println("B");
	}
}
public class C {
	public static A a = new A();
	public B b = new B();
	public C(){
		System.out.println("C");
	}
	public static void main(String[] args) {
		
		C c=new C();
		c.change();
	}
	public  void change(){
		B b1 = new B();
	}
}  

 

运行结果:

 A
  A
  B
  C
  A
  B

public class A {
	public A(){
		System.out.println("A");
	}
	{
		System.out.println("1");
	}
	static{
		System.out.println("2");
	}	
}
public class B extends A{
	public B(){
		System.out.println("B");
	}
}
public class C {
	static{
		System.out.println("3");
	}	
	{
		System.out.println("4");
	}
	public static A a = new A();
	public B b = new B();
	public C(){
		System.out.println("C");
	}
	public static void main(String[] args) {	
		C c=new C();
		c.change();	
	}
	public  void change(){
		B b1 = new B();
	}	
}

 

运行结果:

3
 2
 1
 A
 4
 1
 A
 B
 C
 1
 A
 B

练习的总结:

优先顺序:在主方法所在类中定义的静态代码块——静态属性——主方法——实例化对象
   ——普通属性——普通构造块——构造方法——所调用的方法
     普通类中的静态代码块——构造块——构造方法
     static属性和代码块,在装载类时已然可以实现;
     普通的属性的代码块则需要在实例化对象是才可以实现;
     static代码块只会执行一次。

分享到:
评论

相关推荐

    java关键字总结

    以上是Java中的主要关键字总结,每个关键字都在不同的场景下发挥着重要作用,理解并熟练掌握这些关键字对于编写高效、可靠的Java代码至关重要。对于更深入的学习,可以参考指定的博文链接或其他相关资料进行研究。

    Java 关键字总结(48个)

    Java 关键字总结 Java 关键字是 Java 编程语言中的一种特殊词语,用于定义、声明和控制程序的流程。以下是 Java 中 48 个关键字的总结: 1. abstract:abstract 关键字可以修改类或方法。abstract 类可以扩展...

    java关键字总结文档

    ### Java关键字总结 Java是一种广泛使用的面向对象编程语言,它具备简单性、可移植性、高性能等特点。在Java中,关键字具有特殊的语法含义,不能用作标识符(例如变量名或方法名)。以下是对给定文件中提到的Java...

    js关键字总结.docx

    js关键字总结.docx

    js关键字总结.pdf

    js关键字总结.pdf

    java中常用关键字总结.docx

    java中常用关键字总结

    java关键字总结珍藏版(48个)

    ### Java关键字总结珍藏版(48个) #### 1. abstract - **定义与用途**:`abstract`关键字在Java中主要用于定义抽象类和抽象方法。抽象类是指那些不能直接实例化的类,它们通常会被继承来提供进一步的实现细节。而...

    常用Selenium2Library关键字总结

    常用Selenium2Library关键字总结,用于后期自己学习。

    JAVA关键字总结(整理后最全最详细)

    下面是对Java关键字的详细总结,按照给出的部分内容进行排列: 1. `abstract`: - `abstract` 关键字用于声明抽象类或抽象方法。抽象类不能被实例化,只能作为其他类的基类。抽象方法没有具体的实现,必须在子类中...

    C++中static关键字总结

    总结来说,C++中的static关键字提供了一种机制,可以控制变量和函数的作用域和生命周期,使其在需要的地方得到合理的存储和访问。正确地理解和使用static关键字,可以帮助编写出更加高效、安全和易于维护的代码。

    Java this、final等关键字总结

    Java中的关键字this、final以及super在编程中扮演着至关重要的角色。下面我们将深入探讨这些关键字的用法和意义。 首先,`this`关键字是Java中一个非常基础且实用的元素,它代表当前对象的引用。当类的成员变量与...

    Java关键字总结

    ### Java关键字总结 #### 1. final数据 - **对于基本类型**:加上`final`修饰符后的变量被视为常量,不可更改。若一个变量同时被`static`和`final`修饰,则意味着它只占据了一段固定且不可变的存储空间。 - **对象...

    Java关键字总结珍藏版

    Java 关键字是编程语言中具有特殊含义的保留词汇,它们在编程中扮演着至关重要的角色。本篇文章将深入解析 Java 中的一些关键关键字,并提供相关的编程示例。 1. `abstract` 关键字: `abstract` 可以用于修饰类和...

    java中常用关键字总结[归类].pdf

    Java编程语言中有许多关键字,这些关键字在不同的场景下发挥着重要的作用。以下是对这些关键字的详细解释: **final关键字** 1. 当`final`应用于类时,意味着该类不能被继承,没有子类。 2. 如果`final`修饰方法,...

    Swift 关键字总结

    这篇总结将深入探讨一些Swift中的不常用关键字及其用法。 1. `as` - 类型转换关键字。`as`用于在运行时进行类型转换,如强制解包或在多态上下文中指定类型。 ```swift let anyObject: Any = "Hello" let string = ...

    Java关键字总结珍藏版(48个).doc

    Java 关键字是编程语言中具有特殊含义的保留词汇,它们不能用作变量名、方法名或类名。Java 具有48个关键字,这些关键字在程序中起到至关重要的作用,控制着程序的结构和行为。下面是对这些关键字的详细解释: 1. `...

    Java关键字大全

    Java关键字大全 Java语言中有多种关键字,每个关键字都有其特定的用途和作用。下面是Java关键字大全的详细解释: 1. abstract关键字 abstract关键字可以修改类或方法。abstract类可以扩展(增加子类),但不能...

    RobotFramework常用关键字

    ### RobotFramework常用关键字详解 **RobotFramework** 是一款强大的自动化测试框架,支持多种语言和工具的集成,使得自动化测试变得更加灵活高效。本文旨在详细介绍由 **Builtin** 库提供的若干常用关键字及其应用...

Global site tag (gtag.js) - Google Analytics