zoukankan      html  css  js  c++  java
  • 第三周学习总结和实验报告

    Java实验报告(一)

    实验一 Java开发环境与简单Java程序

    一、 实验目的

    (1) 熟悉JDK开发环境
    (2) 熟练掌握结构化程序设计方法

    二、 实验内容

    1. 打印输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其中各位数字立方和等于该数本身。例如,153是一个“水仙花数”。
    2. 编写Java程序,求13-23+33-43+…+973-983+993-1003的值。
    3. 编程求1!+2!+3!+…+20!。
    4. 编写Java程序,计算8+88+888+…前10项之和。
    5. 一个数如果恰好等于它的因子之和,这个数就称为完数。编写程序输出1000以内的所有完数。
    6. 编写应用程序,输出满足1+2+3+…+n<8888的最大正整数。
    7. 使用for循环打印下面的图形。

    三、 实验过程

    1

     public class reportone
    {
       public static void main(String[] args)
       {
            int  i, a, c, b;
            
            for(i=100;i<1000;i++)
            {
                 a=i%10;
                 c=i/10%10;
                 b=i/100%10;
              
                 if(i==a*a*a+c*c*c+b*b*b)
                 {
                       System.out.println(i);
                  }
             }
         }
    }

     2

     public  class reporttwo
    {
         public static void main(String[] args)
         {
               int i;
               int sum=0;
        
               for(i=1;i<=100;i++)
              {
                   if(i%2==0)
                   {
                          sum=sum-(i*10+3);
                   }
                   else
                   {
                           sum=sum+i*10+3;
                   }
               }
                  System.out.println(sum);
           }
    }

     3

    public class reportthree
    {
           public static void main(String[] args)
          {
            long sum=0;
            for(int i=1;i<=20;i++)
                {
                  sum+=fact(i);
                }
            System.out.println(sum);
           }
           public static long fact(int n)
              {
                long product=1;
                for(int i=1;i<=n;i++)
                   {
                      product=product*i;
                  }
               return product;
              }
      }

     4

    public class reportfour
       {

          public static void main(String[] args)
            {
          long count = 0, sum = 0;

          for(int i=1;i<=10;i++)
             {
               count = (count*10)+8;
               sum += count;
              }
          System.out.println(sum);
            }
       }

     5

    public class reportfive

    {

        public static void main(String[] args)

        {

            int i, j;

             for (i = 1; i <= 1000; i++)

                {

                    int sum=0;

                   for (j = 1; j <= i; j++)

                      {

                         if (i % j == 0)

                            {

                                sum+=j;

                             }

                    }

                    if ((sum - i) == i)

                      {

                       System.out.println(i);

                      }

                  }

           }

    }

     6

     public class reportsix 
    {
        public static void main(String[] args) 
       {
            int sum = 0, n = 0;
            int i;
           for(i=1;;i++)
          {
               sum = sum+i;
               if(sum>=8888)
              {
                   break;
               }
           }
            System.out.println(sum-i);

        }
    }
     

     7

     public class reportseven 
    {

        public static void main(String[] args) 
     {
            int i, j, k;
            for(i=0;i<5;i++) 
       {
                 for(j=0;j<=5-i;j++)
                     System.out.print(" ");
                 
                 for(k=0;k<=i*2;k++) 
               {
                System.out.print("*");
                }
            System.out.println(" ");
        }
      }
    }

    第三周课程总结

    this关键字

    作用:1强调本类中的方法
    2.表示类中的属性(变量)
    3.可以使用this调用本类的构造方法1放在首行2不能循环调用
    4.this表示当前对象

    封装性:属性封装和方法封装

      属性封装:private.  一旦成员变量使用private,在类中可以任意访问,但是!超出了本类范围之外就不能直接访问了,即在本类之外进行间接访问,用setter和getter方法设置和取得间接访问。对此还可以在该方法中进行语法的控制-检验代码。setXxx进行设置数据,赋值,无返回值,但有参数;getXxx进行拿取,有返回值,return。

    创建对象中多个对象的使用-对象引用传递:

        1-per2没有开辟堆内存空间-per2=per1->将per1的堆内存空间使用权给per2;每个栈内存空间都可以修改堆内存的内容。

        2-per2也开辟了堆内存空间-per2=per1-> 因为per2本身就有堆内存空间的指向,所以如何在想指向per1对应的空间,则必须先断开已有连接。因此原有的堆空间中没有栈空间所指向,就形成了空间垃圾,等待Java垃圾收集机制进行回收。而此时per2同样可以对per1中的堆内存数据进行修改.

  • 相关阅读:
    34.2 字节流 InputStreamReader OutputStreamWriter
    34.1 字符流-- FileRead FileWrite
    34 io流-- 打印流和对象流
    33.3 删除指定的目录(包含子目录)
    33.2 案例:输出指定目录下的所有java文件名(包含子目录)
    33.1 File 获取目录下的所有文件及子目录
    33 File 文件及目录操作
    32 递归
    31.3 自定义异常类 MyException
    31.2 try finally使用
  • 原文地址:https://www.cnblogs.com/slob/p/11524301.html
Copyright © 2011-2022 走看看