当前位置: 代码迷 >> Java Web开发 >> 弱智抓蛙男 前来报道,有个小问题望不吝赐教
  详细解决方案

弱智抓蛙男 前来报道,有个小问题望不吝赐教

热度:90   发布时间:2006-11-24 18:45:52.0
弱智抓蛙男 前来报道,有个小问题望不吝赐教
java运行使每new一个对象就产生了一个进程么?
或者每个方法就是一个进程?
就那么个意思,但是对进程不甚了解,也不知道这样问有没有逻辑问题。
静候佳音!
搜索更多相关主题的帖子: 弱智  不吝  

----------------解决方案--------------------------------------------------------
java是oop思想的,每一个类必须new之后产生一个新对象之后才可以使用。

进程就是执行的程序,在windows下不是有任务管理去么?那么多正在执行的程序其实都是一个个的进程。

----------------解决方案--------------------------------------------------------
一个JAVA程序才是一个进程,进程里面可以有很多线程

new 一个对象和执行一个方法都是一个线程里面做的事
----------------解决方案--------------------------------------------------------
封哥就是不一样啊哈哈
这一手就这么明白,一看就懂了,不愧是高~~手啊哈哈、

还有个小疑问:声明对象的时候是不是也有个线程产生了?
----------------解决方案--------------------------------------------------------
当然不是

线程是你自己去建的

如果不创建的话,用户只有一个主线程在运行


----------------解决方案--------------------------------------------------------

有点糊涂,因为看了一道贴是这样的:
abstract class Exam4 {
int j=3;
Exam4()
{
print();
{
System.out.println(j);
}
}
abstract void print();
}

public class Exam4Sub extends Exam4{
int i=1;
void print()
{
System.out.println(i);
}
public static void main(String[] args) {
Exam4Sub e=new Exam4Sub();
e.print();
}
}
输出结果是0 1 3
是不是说明在exam4sub e;的时候电脑打印了一个 0
这难道不是线程干的么?望不吝赐教。


----------------解决方案--------------------------------------------------------

结果是0 3 1吧

这是对象初始化顺序的问题

你可以去J2SE版找找相关的帖子


----------------解决方案--------------------------------------------------------


一下字明白了,是我糊涂了。。。

再顺便问一下,在applet里面paint和repaint和update都是虚拟机自己创建的进程么?


----------------解决方案--------------------------------------------------------

paint是系统调用的,有一个专门的线程来做这个事情


----------------解决方案--------------------------------------------------------

恩~~有道理
再帮我改一个程序:
import java.awt.*;
import java.applet.*;

public class changeColor extends Applet{

public void init(String args[]){

Frame f = new Frame("change color box");
f.setSize(300,300);
}


public void paint(Graphics g){
int k ;
for (int i = 0; i <= 255; i++){
k = i;
for (int j = 0; j <= 255; j++){
g.setColor(new Color(k, i, j));
g.drawLine(i, j, i, j);
}
}

repaint();
}
}
我只会extends 成 applet 来做,不是applet的话我就不会用graphics g 了
劳烦帮我实现一下,应该是个很肤浅的问题。自鄙一下


----------------解决方案--------------------------------------------------------