Java ¼Ì³ÐСÀý
¿´¿´ÏÂÃæ³ÌÐò½«Êä³öʲô½á¹û£º
/**
* ShowExtending
* ÑÝʾ¼Ì³ÐʱµÄÏÖÏó
*/
class SupCls {
static String s1 = "¸¸ÀàÀà±äÁ¿s1";
String s2 = "¸¸ÀàʵÀý±äÁ¿s2";
SupCls(){
System.out.println("¸¸À๹ÔìÆ÷±»·ÃÎÊ");
}
public static void f1(){
System.out.println("¸¸Àà static:f1() ±»·ÃÎÊ");
}
public void f2(){
System.out.println("¸¸Àà instance:f2() ±»·ÃÎÊ");
}
}
public class ShowExtending extends SupCls {
static String s1 = "×ÓÀàÀà±äÁ¿s1";
String s2 = "×ÓÀàʵÀý±äÁ¿s2";
ShowExtending(){
// ϵͳ»áµ÷Óø¸ÀàµÄĬÈÏ£¨Ã»ÓвÎÊý£©¹¹ÔìÆ÷
// Èç¹û¸¸ÀàĬÈϹ¹ÔìÆ÷±»¸²¸ÇÒÔÖÂûÓÐÎ޲ι¹ÔìÆ÷£¬Ôò±àÒë³ö´í
// ´ËʱӦ¸Ãµ÷Óà super( /*²ÎÊý*/ ); ÏÔʾµ÷Óø¸À๹ÔìÆ÷
System.out.println("×ÓÀ๹ÔìÆ÷±»·ÃÎÊ");
}
public static void f1(){
System.out.println("×ÓÀà static:f1() ±»·ÃÎÊ");
}
public void f2(){
System.out.println("×ÓÀà instance:f2() ±»·ÃÎÊ");
}
public static void main(String[] args) {
// ´´½¨×ÓÀà¶ÔÏóʱ»á´´½¨¸¸Àà¶ÔÏ󣬻áµ÷Óø¸À๹ÔìÆ÷
SupCls a = new SupCls();
ShowExtending b = new ShowExtending();
SupCls c = b;
// ²âÊÔͨ¹ý²»Í¬·½Ê½·ÃÎʸ¸ÀàºÍ×ÓÀàµÄÊý¾Ý³ÉÔ±
System.out.println("a.s1£º" + a.s1);
System.out.println("a.s2£º" + a.s2);
System.out.println("b.s1£º" + b.s1);
System.out.println("b.s2£º" + b.s2);
System.out.println("c.s1£º" + c.s1);
System.out.println("c.s2£º" + c.s2);
// ²âÊÔͨ¹ý²»Í¬·½Ê½·ÃÎʸ¸ÀàºÍ×ÓÀàµÄ·½·¨³ÉÔ±
System.out.print("a.f1():");
a.f1();
System.out.print("a.f2():");
a.f2();
System.out.print("b.f1():");
b.f1();
System.out.print("b.f2():");
b.f2();
Ïà¹ØÎĵµ£º
ÀàµÄ³õʼ»¯ºÍ¶ÔÏó³õʼ»¯ÊÇ JVM ¹ÜÀíµÄÀàÐÍÉúÃüÖÜÆÚÖзdz£ÖØÒªµÄÁ½¸ö»·½Ú£¬Google ÁËÒ»±éÍøÂ磬ÓйØÀà×°ÔØ»úÖÆµÄÎÄÕµ¹ÊDz»ÉÙ£¬È»¶øÀà³õʼ»¯ºÍ¶ÔÏó³õʼ»¯µÄÎÄÕ²¢²»¶à£¬ÌرðÊÇ´Ó×Ö½ÚÂëºÍ JVM ²ã´ÎÀ´·ÖÎöµÄÎÄÕ¸üÊÇÏÊÓÐËù¼û¡£
±¾ÎÄÖ÷Òª¶ÔÀàºÍ¶ÔÏó³õʼ»¯È«¹ý³Ì½øÐзÖÎö£¬Í¨¹ýÒ»¸öʵ¼ÊÎÊÌâÒýÈ룬½«Ô´´úÂëת»»³É JVM ×Ö½ÚÂëºó£¬ ......
1.±à³Ì½ç×îÖøÃûµÄÒ»¾ä»°“Hello world!”,ÈκÎÒ»¸ö³ÌÐòÔ±Æð²½Ê±±ØÓöµÄÓï¾ä
public class HelloWorld {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.print("Hello World!");
......
Synchronized£¬¹ËÃû˼Ò壬´ú±í¶à¸öÏß³ÌÖ®¼äµÄͬ²½¡£ÄÇô£¬ÔÚjava±à³ÌÖÐÈçºÎʹÓÃËüÄØ£¿ ÎÒÃǼÙÉèÕâÑùÒ»¸öÇé¿ö£º¶ÔÓÚͬһ¸ö±äÁ¿synDemo£¬ÎÒÃÇ·Ö±ðÔÚ2¸ö²»Í¬µÄÏß³ÌÖе÷ÓÃsynDemo.synMethord1()ÓësynDemo.synMethord2()¡£ package com.cnblogs.gpcuster;
/**
*
* @author Aaron.Guo
*
*/
public class Tester { ......
public class DealLockTest implements Runnable {
static String i = new String();
static String j = new String();
private String str = null;
public DealLockTest(String str) {
this.str = str;
}
public static void main(String[] args) {
new Thread(new DealLockTest("i")).start( ......
ÏÈÉùÃ÷һϣ¬ÌâĿԳöÓÚ£ºhttp://gocom.primeton.com/modules/newbb/item60284_60284.htm
JVMÊÇJava³ÌÐòµÄÔËÐл·¾³£¬Òò´Ë¶ÔÓÚJVMµÄÕÆÎÕÓÐÖúÓÚÀí½âJava³ÌÐòµÄÖ´ÐÐÒÔ¼°±àд£¬ÓÈÆäÊÇÔËÐÐʱÅöµ½µÄһЩ¹îÒìÎÊÌ⣬ÄÇôÔõôÑùÄÜ¿¼²ì×Ô¼º¶ÔÓÚJVM¹Ø¼ü֪ʶµãµÄÕÆÎÕÇé¿ö£¬°ïÖúѧϰJVM»úÖÆÄØ£¬ÔÚÕâÆªblogÖÐÀ´Ì½ÌÖÏ¡£
¶ÔÓÚJava³ÌÐò¶øÑ ......