首页 > 编程语言 > 详细

java中静态方法的使用

时间:2015-12-11 23:44:55      阅读:251      评论:0      收藏:0      [点我收藏+]

JAVA中使用静态方法 

编程时我们心里一定要清楚静态方法和类的非静态方法方法的区别: 
最根本区别从编译角度来说吧: 
1) 静态(static)方法是编译时直接加载加载到内存中(离cpu最近的一块内存区域也称为堆栈),比如程序的public static main(args []){}方法,你能实例话吗? 
静态方法不能被实例化,也不允许被实例化! 

因此你可以通过“类名”+“.”+“静态方法的名()”来调用 

2)非静态方法(类的非静态方法)通过关键字 “new” 字来实例化一个对象(object),这个对象放在内存的另一块区域堆(heap)中。 
也就是说编译时,非静态方法必须先实例化类的一个对象,通过“对象名”+“非静态方法名()”来调用, 

或者是“对象引用(句柄)”+“.”+“静态方法的名()”; 

Java代码  技术分享
  1. public class Student {  
  2.   
  3.     private String name;  
  4.       
  5.     //下面两个方法是类的非静态方法封装 属性name,看一下在 main()如何调用   
  6.     public void set(String init_name) {  
  7.         this.name = init_name;  
  8.     }  
  9.       
  10.     public String get() {  
  11.         return this.name;  
  12.     }  
  13.       
  14.     //构造函数  
  15.     public Student() {}  
  16.     public Student(String init_name) {  
  17.         this.name = init_name;  
  18.     }  
  19.       
  20.     //下面是一个静态方法,看一下它在main()中如何调用  
  21.     public static void PrintClassName() {  
  22.         System.out.println("该类的名字:Student");  
  23.     }  
  24. }  



Java代码  技术分享
    1. public class MainClass {  
    2.   
    3.     public static void main(String[] args) {  
    4.         //先调用静态方法,不需要实例化对象   
    5.         Student.PrintClassName();  
    6.   
    7.         //现在调用非静态方法,一定要实例化对象   
    8.         Student stu1 = new Student();  
    9.         stu1.set("John");  
    10.         String stu1_name = stu1.get();  
    11.     }  
    12. }  

java中静态方法的使用

原文:http://www.cnblogs.com/Chenshuai7/p/5040386.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!