易截截图软件、单文件、免安装、纯绿色、仅160KB

java中涉及构造器的相关问题

            在看到Thinking in java 第四章时初始化相关问题的时候,我们不由地把注意力移到构造器上。这里做个简单的总结,便于高手指正以及自己温故。
      首先构造器是要构造一个东西{构造对象(实例)}并对其初始化。之所以很多程序中没有看到它,是因为在java程序中如果你没定义任何构造器,则编译器会自动给你加上默认构造器(不带任何参数,也没有“方法体”)。倘若自己定义了构造方法,编译器将不再自动添加。构造器是可以提供很多方法,但与构造方法又有所不同。如Robert Nielsen 所说,这关系就好似澳大利亚的鸭嘴兽是一种哺育动物。(要理解鸭嘴兽,那么先必须理解它和其他哺育动物的区别。)
    其次构造器有几点简单的要求:
    a,构造器需采用与类名相同的名称(大小写也要一致);
    b,构造器没有返回值(也无需添加void);
    c, 构造器修饰符仅有public,private及protected三个;
    d,构造器与构造方法存在不同,如构造方法不仅要给对象实例变量赋值,并和new一起创建对象。
    e,父类中的构造器不能被继承,父类中的方法可以继承。
    f,同一类中的构造器可以重载。
    g,子类与父类构造器编译时常出错的关键如下:
例一:
class A {
   public A() {
      System.out.println("A");
    }
}
class B extends A{
   public B(String str) {
      System.out.println("B");
    }
}
class C extends B{
   public C(String str) {super(str);System.out.println("C String");
     }
   public C(int n) {System.out.println("C int");super("" + n);
     }
}
说明:
编译错误,调用父类的构造器语句应该为类构造器中的第一个语句。
修改为:public C(int n) {super("" + n);System.out.println("C int");}
使用:C c = new C(10); //输出:A B C
例二:
class TestSuper{
    TestSuper(int i){}   &nb


相关文档:

java实现FTP操作

 import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import sun.net.TelnetOutputStream;
import sun.net.TelnetInputStream;
import sun.net.ftp.FtpClient;
public class download ...{
& ......

Java读文件写文件操作

  这里,Java的读文件和写文件都是基于字符流的,主要用到下面的几个类:
1、FileReader----读取字符流
2、FileWriter----写入字符流
3、BufferedReader----缓冲指定文件的输入
该类的方法有:
void close() 
        关闭该流。
 void mark(int readAhead ......

Java socket 入门编程实例

 这是一个C/S之间通信的例子,在JDK1.4下测试通过.
//服务器端源程序tcpserver.java
import java.io.*;
import java.net.*;
public class tcpserver
{
    public static void main(String[] args) throws  IOException
    {
        ......

java 树结构代码

 public class TreeNodes{
  IList<BranchInfo> branchs = BranchInfoManager.getAllBranchInfos();
  foreach(BranchInfo branch in branchs){
    TreeNode branchNode = new TreeNodeCreate(branch.BranchName,branch.BranchId.toString(),"","~/Images/menuclose.gif");
  ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号