Java中静态方法和非静态方法的区别 |
您所在的位置:网站首页 › java静态方法和普通方法的关系 › Java中静态方法和非静态方法的区别 |
标题 Java中静态方法和非静态方法的区别
概念
方法前加了static关键字,则该方法称为静态方法,否则为非静态方法。例如public void say(){};public static void sing(){},say方法就是一个非静态方法,而sing是一个静态方法。他们两者在方法的调用等方面有很大的不同 方法调用上的区别 静态方法:在一个类中若是想调用另一个类的静态方法可以直接使用类名.方法名的方式点出该方法。 //Person类 public class Person { //静态方法 public static void sing(){ System.out.println("唱了一首歌"); } } //测试类 public class Test { public static void main(String[] args) { //调用方法:类名.方法名 Person.sing(); } } 非静态方法:如果想要在类中调用一个非静态方法需要用new实例化这个方法,基本形式为:对象类型 对象名= new 构造方法 然后使用对象名.方法名可以调用该方法 //Person类 public class Person { //非静态方法 public void say(){ System.out.println("说了一句话"); } } //测试类 public class Test { public static void main(String[] args) { //实例化 Person xiaoming=new Person(); xiaoming.say(); } } 继承中的区别 静态方法:父类:Person 类 子类:Student类 //父类 public class Person { public static void sing(){ System.out.println("Peron唱了一首歌"); } } //子类 public class Student extends Person { public static void sing(){ System.out.println("Student唱了一首歌"); } } //测试类 public class Test { public static void main(String[] args) { Student hhh=new Student(); hhh.sing(); //父类的引用可以指向子类 Person sss=new Student(); sss.sing(); } }结果为: 结果为: |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |