我试图在我的eclipse工作区中的java.lang包中创建一个自定义类String.最初我怀疑同一个包中的同一个类是无法创建的,但令我惊讶的是我能够在同一个包中创建一个类(String),即java.lang
现在我很困惑
1)为什么有可能和
2)如果允许的话可能是什么原因.
3)如果在Java中允许这种类型的java类创建,将会有什么用处.
以下变量用法之间的区别是什么
public class A{
B b= new B();
public void doSomething()
{
b.callme();
}
}
Run Code Online (Sandbox Code Playgroud)
VS
public class A {
B b;
public void doSomething() {
b=new B();
b.callme();
}
}
Run Code Online (Sandbox Code Playgroud)
如果我们在一个班级中只有一个“ b”,那么哪个是更好的做法以及为什么。在什么情况下应该使用谁。
我通过对如此不同的问题去,并试图找出什么是设计一个应用程序.我发现,某个地方,这是写我们应该做的类的对象,如果它有一个状态的最佳方式本.
我在同一页面上发现应避免使用实用程序,所以我的问题是如何实现该功能.我们无法创建对象,因为功能可以具有且不具有状态.我们也不能使用静态方法.那怎么样.
PS ----我的问题可以是外行bcoz我是新手试图学习/实现设计模式所以如果有人可以提供我的阅读材料,与例子的链接会很高兴.
我从理论上知道了一些设计模式.
为什么下面提到的代码打印4,3,2,1,0,为什么不打印4,4,4,4,4.由于引用sb是相同的,所以为什么不指向最后更新的值,为什么不将所有值更新为4
package iteration;
import java.util.Stack;
public class test {
public static void main(String[] args) {
Stack stack = new Stack();
StringBuilder sb;
for (int i = 0; i < 5; i++) {
sb = new StringBuilder();
sb.append(i);
stack.add(sb);
}
for (int i = 0; i < 5; i++) {
System.out.println(stack.pop());
}
}
}
Run Code Online (Sandbox Code Playgroud)