实例方法和类方法的访问哲学 实例变量和类变量的访问哲学
2013-10-19 16:12
295 查看
一个类中的方法一种叫实例方法,另外一种叫类方法(静态方法),现总结如下
谁可以访问的问题:
一、类方法
可以调用类方法的有:类名.类方法,对象名.类方法
public class MethodDemo {
public static void main(String[] args) {
MethodDemo m=new MethodDemo();
m.f(2);
MethodDemo.f(3);
}
public static int f(int x){
int y=2*x+5;
m.f(3);
return y;
}
public int m(int x){
int z=3*x+6;
return z;
}
}
二、实例方法
可以调用的方式:对象名.类方法
public class MethodDemo {
public static void main(String[] args) {
MethodDemo m=new MethodDemo();
m.m(3);
}
public static int f(int x){
int y=2*x+5;
return y;
}
public int m(int x){
int z=3*x+6;
return z;
}
}
三、类方法中不可以调用实例方法,但实例方法可以调用类方法
public static int g(int x){
int z=3*x+6;
//m(3);
return z;
}
public int m(int x){
int z=3*x+6;
g(3);
return z;
}
若特别想调用也可以:类方法中可以调用实例方法,实例方法也可以调用类方法
public class MethodDemo {
public static void main(String[] args) {
MethodDemo m=new MethodDemo();
m.m(3);
}
public static int g(int x){
int z=3*x+6;
//类方法调用实例方法
MethodDemo m=new MethodDemo();
m.m(3);
return z;
}
public int m(int x){
int z=3*x+6;
//实例方法中调用类方法
MethodDemo.f(3);
f(4);
return z;
}
}
四、静态方法可以访问变量的类型静态的
实例方法的两种类型的变量均可以
public class MethodDemo {
int shili;
static int jintai;
public static int g(int x){
int z=3*x+6;
//System.out.println(shili);
System.out.println(jintai);
return z;
}
public int m(int x){
int z=3*x+6;
System.out.println(shili);
System.out.println(jintai);
return z;
}
}
谁可以访问的问题:
一、类方法
可以调用类方法的有:类名.类方法,对象名.类方法
public class MethodDemo {
public static void main(String[] args) {
MethodDemo m=new MethodDemo();
m.f(2);
MethodDemo.f(3);
}
public static int f(int x){
int y=2*x+5;
m.f(3);
return y;
}
public int m(int x){
int z=3*x+6;
return z;
}
}
二、实例方法
可以调用的方式:对象名.类方法
public class MethodDemo {
public static void main(String[] args) {
MethodDemo m=new MethodDemo();
m.m(3);
}
public static int f(int x){
int y=2*x+5;
return y;
}
public int m(int x){
int z=3*x+6;
return z;
}
}
三、类方法中不可以调用实例方法,但实例方法可以调用类方法
public static int g(int x){
int z=3*x+6;
//m(3);
return z;
}
public int m(int x){
int z=3*x+6;
g(3);
return z;
}
若特别想调用也可以:类方法中可以调用实例方法,实例方法也可以调用类方法
public class MethodDemo {
public static void main(String[] args) {
MethodDemo m=new MethodDemo();
m.m(3);
}
public static int g(int x){
int z=3*x+6;
//类方法调用实例方法
MethodDemo m=new MethodDemo();
m.m(3);
return z;
}
public int m(int x){
int z=3*x+6;
//实例方法中调用类方法
MethodDemo.f(3);
f(4);
return z;
}
}
四、静态方法可以访问变量的类型静态的
实例方法的两种类型的变量均可以
public class MethodDemo {
int shili;
static int jintai;
public static int g(int x){
int z=3*x+6;
//System.out.println(shili);
System.out.println(jintai);
return z;
}
public int m(int x){
int z=3*x+6;
System.out.println(shili);
System.out.println(jintai);
return z;
}
}
相关文章推荐
- OC中继承子类对象调用方法机制 子类对象访问父类中的实例变量
- jsp:synchronized方法控制对类成员变量的访问(实例)
- python中的实例方法、静态方法、类方法、类变量和实例变量浅析
- JavaScript之实例变量、实例方法、类变量、类方法
- 为什么不管是静态内部类的普通方法还是静态方法都不能访问外部类的实例变量
- python中的实例方法、静态方法、类方法、类变量和实例变量
- java中实例变量、类变量以及构造方法的加载顺序
- python中的实例方法、静态方法、类方法、类变量和实例变量浅析
- Python的类方法,静态方法,实例方法,类变量,实例变量,静态变量的总结
- python中的实例方法、静态方法、类方法、类变量和实例变量
- 编程的有效方法--实例变量的访问
- python中的实例方法、静态变量,静态方法、类方法、类变量和实例变量
- 关于类变量和实列变量..及类方法和实例方法..
- 【java performance】让访问实例内变量的getter/setter方法变成”final”
- python 类的函数,类方法,静态方法,类变量,实例变量浅析
- python中的实例方法、静态方法、类方法、类变量和实例变量浅析
- 具体的一个实例,展示如何访问实例变量和调用成员方法
- python中的实例方法、静态方法、类方法、类变量和实例变量浅析
- 实例变量,实例方法,类变量,类方法
- Ruby类实例变量、类实例方法和类变量、类方法的区别