- 浏览: 195543 次
- 性别:
- 来自: 北京
-
文章分类
- 全部博客 (321)
- eclipse (4)
- idea (2)
- Html (8)
- Css (14)
- Javascript (8)
- Jquery (6)
- Ajax Json (4)
- Bootstrap (0)
- EasyUI (0)
- Layui (0)
- 数据结构 (0)
- Java (46)
- DesPattern (24)
- Algorithm (2)
- Jdbc (8)
- Jsp servlet (13)
- Struts2 (17)
- Hibernate (11)
- Spring (5)
- S2SH (1)
- SpringMVC (4)
- SpringBoot (11)
- WebService CXF (4)
- Poi (2)
- JFreeChart (0)
- Shiro (6)
- Lucene (5)
- ElasticSearch (0)
- JMS ActiveMQ (3)
- HttpClient (5)
- Activiti (0)
- SpringCloud (11)
- Dubbo (6)
- Docker (0)
- MySQL (27)
- Oracle (18)
- Redis (5)
- Mybatis (11)
- SSM (1)
- CentOS (10)
- Ant (2)
- Maven (4)
- Log4j (7)
- XML (5)
最新评论
1. Java中static关键字
2. Java中final关键字
3. Java中static代码块
可以修饰类,属性,方法。 1. static修饰属性时,无论多少引用都公用一个属性。 一个成员变量是static的,可以通过 类名.成员变量名 来使用。 public class StaticTest { public static void main(String[] args){ MyStatic myStatic = new MyStatic(); MyStatic.a = 10; // 类名,不是引用名 System.out.println(myStatic.a); } } class MyStatic{ static int a; } 10 2. 一个方法是static的,可以通过 类名.方法名 来使用。 public class StaticTest2 { public static void main(String[] args){ // MyStatic2 test = new MyStatic2(); // test.output(); MyStatic2.output(); } } class MyStatic2{ public static void output(){ System.out.println("output"); } } output 3. 子类是不能重写父类的静态方法的。(只能继承):是隐藏不是继承。 1) 父类对象指向子类的引用,调用父类的静态方法。 2) 子类对象指向子类的引用,调用子类的静态方法。 3) 父类对象指向子类的引用,调用子类的非静态方法。 4) 子类对象指向子类的引用,调用子类的非静态方法。 public class StaticTest3 { public static void main(String[] args){ M m = new N(); m.output(); } } class M{ public static void output(){ System.out.println("M"); } } class N extends M{ public static void output(){ System.out.println("N"); } } M
2. Java中final关键字
可以修饰类,属性,方法。 1. Final修饰类的时候,该类是一个终态类,不能被继承。 public class FinalTest{ public static void main(String[] args){ F f = new F(); } } final class E // 该类不能被继承{ } class F extends E{ } Exception in thread "main" java.lang.Error: Unresolved compilation problem: The type F cannot subclass the final class E 2. Final修饰方法的时候,该方法是一个终态方法,不能被重写(Override)。 public class FinalTest2{ public static void main(String[] args){ H h = new H(); h.output(); } } class G{ public final void output(){ System.out.println("G"); } } class H extends G{ public void output(){ System.out.println("H"); } } Exception in thread "main" java.lang.VerifyError: class org02.H overrides final method output.() 3. Final修饰属性的时候,该属性不能被改写。 public class FinalTest3{ public static void main(String[] args){ People people = new People(); // The final field People.age cannot be assigned // people.age = 20; // people.address = new Address(); people.address.name = "shanghai"; System.out.println(people.address.name); } } class People{ final int age = 10; final Address address = new Address(); } class Address{ String name = "beijing"; } Shanghai 补充: final类型的变量必须赋初值。(可以直接赋值,可以在构造方法中赋值。(但是不能两者都存在)) 如果是有参数的构造方法,必须给final类型的变量赋值(因为不知道会调用哪个方法)。 对于final类型的成员变量,一般有两种类型的赋值方法: a) 在声明final成员变量时就赋值。 b) 在声明final成员变量时不赋值,在类的所有构造方法中都为其赋值。
3. Java中static代码块
代码块是在加载的时候执行的,所有无论生成几个对象,只会执行一次代码块。 不能在静态的方法中访问非静态的成员变量。(可以通过类去调用静态方法,但不知道要操作的成员变量是哪个对象中的) 静态方法只能访问静态变量,非静态方法既可以访问静态方法,也可以访问非静态方法。 this不能引用static属性,this是非静态的,只能是当前对象。 public class StaticTest4{ public static void main(String[] args){ new S(); new S(); } } class P{ static{ System.out.println("P static block"); } public P(){ System.out.println("P constructor"); } } class Q extends P{ static{ System.out.println("Q static block"); } public Q(){ System.out.println("Q constructor"); } } class S extends Q{ static{ System.out.println("S static block"); } public S(){ System.out.println("S constructor"); } } P static block Q static block S static block P constructor Q constructor S constructor P constructor Q constructor S constructor
发表评论
-
Java中获取IP地址、子网掩码、网关地址
2019-06-26 10:53 01. Java中获取IP地址、子网掩码、网关地址、ping连通 ... -
Java中ThreadLocal
2019-04-19 10:44 01. Java中ThreadLocal Java中的Th ... -
Java中原子性锁synchronized、Lock
2019-04-18 15:19 01. synchronized依赖JVM 1) 修饰代码 ... -
Java中原子性Atomic
2019-04-18 14:45 01. Atomic包简介 java.util.concu ... -
开发常用链接
2019-03-26 11:21 0在线工具:http://tool.oschina.net/ ... -
java1234学习目录
2019-03-21 11:08 01-01-01 N01 J2SEv2(41课时) ... -
Java中TCP和UDP
2018-10-25 10:55 3601. 网页内容获取 Url1.java impor ... -
Java中Thread线程
2018-10-25 09:38 3991. 实现线程的两种方式 1. 继承Thread类并重写 ... -
Java中serializable序列化
2018-10-24 14:46 4891. 序列化 transient不会被序列化。 imp ... -
Java中CharSet集
2018-10-24 11:31 5571. CharSet集 import java.nio. ... -
Java中RandomAccessFile类
2018-10-24 11:30 5211. RandomAccessFile类 1. 使用Ra ... -
Java中I/O的字符流InputStreamReader和OutputStreamWriter
2018-10-22 09:43 4531. InputStreamReader和OutputStre ... -
Java中其它输入输出流
2018-10-22 09:08 4841. ByteArrayInputStream流 以ar ... -
Java中I/O的OutputStream流
2018-10-22 08:54 4971. Java中I/O的OutputStream流 1. ... -
Java中I/O的InputStream流
2018-10-22 08:42 4801. Java中I/O的InputStream流 1. ... -
Java中I/O的File类
2018-10-19 13:45 4561. Java中I/O的File类 1. 在window ... -
Java中innerClass内部类
2018-10-18 09:37 4641. Java中innerClass内部类 用AA.BB ... -
Java中adapter适配器
2018-10-18 08:36 5961. Java中adapter适配器 适配器adapte ... -
Java中awt包
2018-10-17 11:26 17271. Java中awt包 AWT事件模型Event 1 ... -
Java中frame对象
2018-10-17 10:56 6961. Java中frame对象 1. Frame对象 ...
相关推荐
需要注意的是,`final` 关键字与 `finally` 关键字不同,`finally` 用于异常处理,确保代码块在任何情况下都能执行。同时,`final` 也与 `Object` 类中的 `finalize()` 方法区分开,`finalize()` 是在对象被垃圾收集...
Java 中的 static 关键字 Java 中的 static 关键字是用于声明类的成员变量和成员方法的,它可以使得变量和方法属于类本身,而不属于某个对象。静态变量也称为类变量,静态方法也称为类方法。静态变量和静态方法可以...
通过上述分析,我们可以看到`final`关键字在Java中扮演着非常重要的角色,它不仅可以帮助我们编写更加安全稳定的代码,还可以提高程序的执行效率。正确地使用`final`可以大大增强代码的可靠性和性能。 ### Java中的...
Java 中 final 和 static 的区别 final 关键字在 Java 中有多种用法,包括修饰变量、方法、类等。...final 关键字用于表示不可变的变量、方法、类等,而 static 关键字用于表示静态的成员变量、方法、代码块等。
Java中的`final`关键字是一个...总结来说,`final`关键字在Java中扮演着确保数据不变性和控制继承的角色,帮助开发者维护代码的稳定性和安全性。理解并恰当使用`final`关键字对于编写健壮、高效的Java代码至关重要。
### Java关键字final、static使用总结 #### 一、final关键字详解与...综上所述,`final`和`static`关键字在Java编程中有着非常重要的作用,合理地运用这些关键字可以帮助我们编写出更加健壮、高效、易于维护的程序。
在Java中,方法是实现特定功能的代码块,可以被多次调用。方法分为实例方法和静态方法,通过return语句返回结果。重载(Overloading)和重写(Overriding)是Java中关于方法的两个重要概念,前者是同一类中方法名...
static 关键字是 Java 中的一个静态修饰符,用于修饰成员变量、方法和代码块。静态成员变量和静态方法是隶属于类的,而不是直接隶属于对象的。 分类: 1. 静态变量:也称作类变量,属于类的成员变量。 2. 静态方法...
在Java编程语言中,`static`关键字是一个非常关键的元素,它有着丰富的含义和用途。本教程将深入探讨`static`关键字的各个方面,以便你更好地理解和应用它。 首先,`static`关键字主要用于声明类级别的变量和方法,...
在Java编程语言中,`final`与`static`是两个非常关键且常用的关键字,它们各自具有独特的功能和用途,可以极大地增强代码的稳定性和可维护性。下面将详细解析这两个关键字的用法及其在Java中的重要性。 ### 一、`...
Java中的final关键字是一个非常重要的概念,它用于定义不可变性,确保对象或代码段的不可修改性。在Java中,final可以用来修饰类、方法、变量和参数,以实现特定的编程需求。以下是对final关键字在各个场景下用法的...
`static`关键字用于创建类级别的变量、方法和代码块,它们不依赖于类的实例。静态变量由类加载时初始化,所有类的实例都可以共享这些变量。静态方法不能访问非静态成员,因为它们不与特定对象关联。Java中的`main`...
Java 中 static 关键字的作用 Java 中的 static 关键字是一个非常重要...static 关键字在 Java 中有多种用途,包括修饰成员变量、成员方法、static 代码块等。对 static 关键字的理解和使用是 Java 编程的基本功之一。
Java 中的 static、this、super、final 用法是 Java 语言中四个重要的关键字,它们在 Java 编程中扮演着不同的角色,下面我们将详细介绍每个关键字的用法。 一、static static 关键字在 Java 中有多种用法: 1. ...
首先,static关键字可以用来修饰变量、方法和代码块。static修饰的变量和方法可以用类名直接调用,而不需要创建对象实例。static修饰的代码块只执行一次,优先级仅低于静态变量。 static关键字的作用 static关键字...
Java中的`final`关键字是一个非常重要的概念,它用于在编程中实现不可变性。下面是对`final`关键字的详细解释: ## Java最终变量 当一个变量被声明为`final`时,这意味着它的值一旦被赋值后就无法再改变。这在Java...
静态代码块(static代码块)** 静态代码块是一组在类加载时执行的静态语句,它们在类加载时按照出现的顺序依次执行,且只执行一次。静态代码块常用于初始化静态变量或执行一些类级别的设置。在上述示例中,静态代码...
总结,`final`关键字在Java中起到了锁定变量、方法和类的作用,保证了数据的不可变性和代码的不可篡改性。在编写并发程序时,合理使用`final`可以提高程序的并发安全性和性能。尤其是在多线程环境中,`final`变量...
在Java编程语言中,`final` 和 `static` 是两个非常重要的关键字,它们分别具有不同的含义和用法,但都对代码的结构和行为产生深远影响。本文将深入探讨这两个关键字,并结合实际示例来解释它们的应用场景。 首先,...
在Java编程语言中,关键字与保留关键字是极其重要的组成部分,它们定义了语言的基本结构和语法规则。对于初学者来说,熟悉这些关键字对于理解和编写正确的Java程序至关重要。 #### 关键字(Keyword) Java关键字是...