这一节我们再看一个特殊的代码块.那就是构造代码块. 这里我们简单的通过样例来说明一下: class Person { private String name; { System.out.println("Person类的第一个代码块被运行"); } Person() { System.out.println("无參数构造函数被运行"); this.name = "小宝宝"; } Person(String name) { System.out.p…
static block and non-static block(constructor block) [toc] 想来想去,先来一题比较好 public class Foo { public static void main(String[] args) { Baz.testAsserts(); Baz.testAsserts(); // Will execute after Baz is initialized. } } class Bar { static { Baz.testAsser…
1. 同步代码块 和 同步方法 代码示例: (1)目标类,如下: package cn.himi.text; public class SellTicket implements Runnable { // 定义100张票 private static int tickets = 100; // 定义同一把锁 private Object obj = new Object(); private Demo d = new Demo(); private int x = 0; //同步代码块用obj…
1. 同步代码块 和 同步方法 代码示例: (1)目标类,如下: package cn.himi.text; public class SellTicket implements Runnable { // 定义100张票 private static int tickets = 100; // 定义同一把锁 private Object obj = new Object(); private Demo d = new Demo(); private int x = 0; //同步代码块用obj…
这一节我们看一个比較特殊的概念,那就是静态代码块. 前面我们也提到过代码块,就是一段独立的代码空间.那么什么是静态代码块呢?说白了,就是用statickeyword修饰的代码块. 我们来看一个样例: class StaticBlock { static { System.out.println("静态代码块被运行"); } void myPrint() { System.out.println("myPrint方法运行"); } } class StaticBloc…
曾经我以为python是像pascal那样begin开始end结束, 直到今天…… 我才知道python是用缩进作为代码段标识的…… >>> def test(n): ... if n==1: ... print("one") ... print("two") ... elif n==2: ... print("three") ... else: ... print("four") ... >>&…
一道容易出错的C++笔试题 求下面代码的输出内容: int main(int argc,char* argv[]) { char str1[]="Hello"; char* str2="World"; cout<<sizeof(str1)<<endl <<sizeof(str2)<<endl; return 0; ) 解析: str1指向的是字符串 "Hello" 的首地址,但 str1 同时也是一…
一.构造函数 1 构造函数的作用 给对应的对象进行初始化. 2 构造函数的格式 修饰符 函数名(形式参数){ //函数名就是类名 函数体 } 举例说明: class Perosn{ private int id; private String name; private int age; public Perosn(){ //无参构造器 cry(); } public Perosn(int id, String name, int age) { //有参构造器 this.id = id; thi…
在Java中,静态代码块.构造代码块.构造函数.普通代码块的执行顺序是一个笔试的考点,通过这篇文章希望大家能彻底了解它们之间的执行顺序. 1.静态代码块 ①.格式 在java类中(方法中不能存在静态代码块)使用static关键字和{}声明的代码块: public class CodeBlock { static{ System.out.println("静态代码块"); } } ②.执行时机 静态代码块在类被加载的时候就运行了,而且只运行一次,并且优先于各种代码块以及构造函数.如果一个…
package cn.temptation; public class Sample01 { public static void main(String[] args) { // 继承关系中的private访问权限:子类只能访问父类中的非私有的成员 } } //// 父类 //class Father { // // 成员变量 // // 子类从父类继承时,父类的private的成员变量(私有的成员变量)对于子类来说是无法访问的 // private String secret = "秘密&q…