62,620
社区成员
发帖
与我相关
我的任务
分享public class Insets {
public Insets getInsets (){
return new Insets();
}
public void test (){
Insets insets = getInsets();
}
}
不知道楼主是不是要这种情况。同一个类中可以直接调用getInsets()方法。如果不是同一个类就需要先创建一个实例,然后再调用。不过你说的这种情况一般会加上static,一般在单例和工厂设计模式中使用。如果在工厂设计模式中,会结合反射来一起使用
静态成员(方法和属性)是属于类的,使用static关键字修饰,实例成员(方法和属性)是属于对象的,没有static的修饰;
这些概念性的东西,你还是多看书吧。。。
静态成员(方法和属性)是属于类的,使用static关键字修饰,实例成员(方法和属性)是属于对象的,没有static的修饰;
这些概念性的东西,你还是多看书吧。。。[/quote]
请问下public Insets getInsets()这个方法是什么方法??该怎么调用??
public class InsetsTest {
private Insets insets;
public static void main(String[] args)
{
InsetsTest test = new InsetsTest();
test.getInsets();
test.setInsets();
//
getInsetsStatic();
}
public static Insets getInsetsStatic()
{
System.out.println("create Insets object... ");
return new Insets();
}
public Insets getInsets()
{
System.out.println("create Insets object... ");
return new Insets();
}
public void setInsets()
{
System.out.println("set insets value... ");
//下面两句的效果是一样的
insets = getInsets();
insets = this.getInsets();
}
}
class Insets{}
在实例方法中,成员方法或变量都是默认添加this的,在静态方法中只能通过new的实例对象进行调用。静态方法不可以直接调用实例方法,实例方法可以直接调用静态方法。你能不能给个例子再说。我知道insets是个类,但是Insets insets=getInsets(); 这样的封装,我理解不了,而且设计模式结构是什么样的,我无法理解。 public insets getInsetsI()这个方法的前提是insets 是一个类,这个方法要返回一个insets 的实例如果把insets 换成void的话就不用返回了,这个说法可以用在设计模式中的工厂模式中,就是创建一个工厂类,专门返回各种类的对象,谁用谁取。(大致是这样的)
你能不能给个例子再说。我知道insets是个类,但是Insets insets=getInsets(); 这样的封装,我理解不了,而且设计模式结构是什么样的,我无法理解。 public insets getInsetsI()这个方法的前提是insets 是一个类,这个方法要返回一个insets 的实例如果把insets 换成void的话就不用返回了,这个说法可以用在设计模式中的工厂模式中,就是创建一个工厂类,专门返回各种类的对象,谁用谁取。(大致是这样的)
你能不能给个例子再说。我知道insets是个类,但是Insets insets=getInsets(); 这样的封装,我理解不了,而且设计模式结构是什么样的,我无法理解。 public insets getInsetsI()这个方法的前提是insets 是一个类,这个方法要返回一个insets 的实例如果把insets 换成void的话就不用返回了,这个说法可以用在设计模式中的工厂模式中,就是创建一个工厂类,专门返回各种类的对象,谁用谁取。(大致是这样的)
public insets getInsetsI()这个方法的前提是insets 是一个类,这个方法要返回一个insets 的实例如果把insets 换成void的话就不用返回了,这个说法可以用在设计模式中的工厂模式中,就是创建一个工厂类,专门返回各种类的对象,谁用谁取。(大致是这样的)
[quote=引用 5 楼 king_2007 的回复:] 我是想知道public+类名+方法名(){}这种方法是怎么编写的??比如insets这个类它的方法getinsets()方法是public insets getinsets(){}??可是我试着编写这种类型的方法,总是编写不成功,除非在public 后面加个static 才能运行成功,z这是怎么回事?