张思名的JAVA教程的实验程序(4~5)

来源:互联网 发布:恐怖小说推荐知乎 编辑:程序博客网 时间:2024/04/30 14:32
 最近开始学JAVA了,用张思名的那本教程,还不错,不过实验没有电子档的程序,所以自己都敲出来运行了一遍。发出来希望给用这本教材的同路人提供些方便。不过,编程这东西,还是要自己多去敲到电脑里运行才行:光看是一个层次,光运行是一个层次,而敲出来运行又是一个层次。当然自己写,那自然是最好的。
    ps:本人只是个超级菜鸟,来这个牛人遍地的CSDN写博客只是为了激励自己可以不停的学下去,同时希望找到和自己一样的人来一起努力和交流。所以牛人们就不要BS我了。
 
实验四
//第一个程序
package tom.jiafei;
public class Father
 {
   int height;
   protected int money;
   public int weight;
   public Father(int m)
    {
     money=m;
    }
   protected int getMoney()
    {
     return money;
    }
   void setMoney(int newMoney)
     {
       money=newMoney;
     }
 }
//这个程序是为了说明package——打包的用法
//这个放在jiafei文件夹中的tom文件夹中,而对应的Jerry程序需要
//放在与jiafei文件夹同等的文件夹中
 
import tom.jiafei.Father;
public class Jerry extends Father
 {
   public Jerry()
    {
      super(20);
    }
   public static void main(String args[])
    {
      Jerry jerry=new Jerry();
      jerry.height=12;
      jerry.weight=200;
      jerry.money=800;
      int m=jerry.getMoney();
      jerry.setMoney(300);
      System.out.println("m="+m);
    }
 }
//第二个程序,接口的例子
interface ShowMessage
 {
   void displog(String s);
 }
class TV implements ShowMessage
 {
   public void displog(String s)
    {
     System.out.println(s); 
    }
 }
class PC implements ShowMessage
 {
   public void displog(String s)
    {
     System.out.println(s); 
    }
 }
public class Example4_28
 {
   public static void main(String args[])
   {
    ShowMessage sm;
    sm=new TV();
    sm.displog("XX牌电视机");
    sm=new PC();
    sm.displog("XX牌计算机");
   }
}
 
//要求自己编写的程序,求素数
package abc.test;   //执行ZS时不用打包
public class ZhiShu
 {
    int n;
    public ZhiShu(int m)
     {
       n=m;
     }
    public void dispzhishu()
     {
      int i,j=2,k=3;   //i为测试素数用,j为待测的素数,k为素数的个数
      System.out.println("0到n之间的第1个素数是:1");
      System.out.println("0到n之间的第2个素数是:2");
      int flag=1;
      for(j=3;j<=n;j++)
        {
          for(i=2;i<(j/2);i++)     //用flag标志此时的j是否是素数,0表示否,1表示是
            {
              if(j%i==0)flag=0;
            }
          if(flag==1)
            {
              System.out.println("0到n之间的第"+k+"个素数是:"+j);
            }
          flag=1;
        }
     }
 }
//用于调用的程序
public class ZS
 {
   public static void main(String args[])
    {
      ZhiShu a=new ZhiShu(50);
      a.dispzhishu();
    }
 }
//这个程序是为了说明package——打包的用法
//是为了说明在同一目录下和不同目录下调用程序的做法
 
//本实验要求掌握一下内容:
//1.打包机制,明确“打包”和对应的程序位置关系;
//2.理解访问控制机制,明确private,default,protect,public的意思;
//3.接口机制
实验五
class Ex5_1
 {
 public static void main(String args[])
   {
    String a[]={"boy","apple","Applet","girl","Hat"};
    for(int i=0;i<=a.length-1;i++)
     {
       for(int j=i+1;j<a.length-1;j++)
         {
           if(a[j].compareTo(a[i])<0);
             {
               String temp=a[i];
               a[i]=a[j];
               a[j]=temp;
             }
         }
     }
    for(int i=0;i<a.length;i++)
      {
        System.out.println(" "+a[i]);
      }
   }
 }
 
 
import java.util.*;
public class Ex5_2
 {
   public static void main(String args[])
    {
     String s="I am real lb,yes";
     StringTokenizer fenxi=new StringTokenizer(s,",");
     int number=fenxi.countTokens();
     while(fenxi.hasMoreTokens())
      {
        String str=fenxi.nextToken();
        System.out.println(str);
        System.out.println("还剩"+fenxi.countTokens()+"个单词");
      }
     System.out.println("s共有单词:"+number+"个");
    }
 }
//这两个程序主要是为了说明数组和字符串的用法,特别要注意字符串的一些常用方法
import java.util.*;
class StrConnect
{
 public static void main(String[] args)
   {
     String s1="Tom like it too.";
     String s2="Mary like drinking coffee";
     byte d1[]=s1.getBytes();
     byte d2[]=s2.getBytes();
     byte d0[]=new byte[100];
     for (int i=0;i<d2.length;i++)
      {
       d0[i]=d2[i];
      }
     d0[d2.length]=',';
     for (int i=0;i<d1.length;i++)
      {
       d0[i+d2.length+1]=d1[i];
      }
     d0[d1.length+d2.length+1]=' ';
     String s=new String(d0,0,(d1.length+d2.length+2));
     System.out.println(s);
   }
}
//用for实现字符串的连接
原创粉丝点击