第三周课程总结&实验报告一
课程总结
1.面向对象的基本概念
对于面向对象的程序设计有三个主要特征:封装性,继承性,多态性。
封装性
为属性封装:private 属性类型 属性名称;
为方法封装:private 方法返回值 方法名称(参数列表){}
构造方法
1.构造方法的名称必须与类名称一致
2.构造方法的声明处不能有任何返回值类型的声明
3.不能再构造方法中使用return返回一个值
构造方法定义格式
class 类名称
{
访问权限 类名称 (类型1 参数 1,类型2 参数 2, ......)
{
程序语句;
........ //构造方法没有返回值
}
}
2.类与对象的关系
类:定义出一个基本的模板,代表着一个共性。对象:每一个具体的人,根据不同给予不同的姓名,代表一个个性。定义一个类,要声明成员变量(属性),然后定义方法的内容。当定义了一个类后,要使用这个类,则需要通过对象。一定要记住如果一个对象要被使用,则对象需要被实例化。在开发中,每个类可以产生多个实例化对象,只要在实例化对象时使用了关键字new,那么就表示开辟新的堆内存空间,而每一个实例化对象都将会占据自己的堆,栈内存。
实验报告
一.打印输出所有的“水仙花数”
所谓“水仙花数”是指一个三位数,其中各立方和等于该数本身。例如,153是个水仙花数,153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3
1.实验代码
public class Tang { public static void main(String[] args) { // TODO Auto-generated method stub int x=0,y=0,z=0; for(int i=100;i<1000;i++) { x=i/100; y=(i%100)/10; z=(i%100)%10; if((x*x*x)+(y*y*y)+(z*z*z)==i) { System.out.println(i+"是一个水仙花数"); } } } }
2.实验结果
二.编写Java程序
求13-23+33-43+.........+973-983+993-1003
1.实验代码
public class Tang { public static void main(String[] args) { // TODO Auto-generated method stub int x=0,y=0; double sum=0; x=13; for(int i=1;i<=100;i++) { y=x; sum=sum+y; x=Math.abs(y)+10; if(i%2==0) { x=x; } else { x=-x; } } System.out.println(+sum); } }
二.实验结果
三.
求1!+ 2! + 3! + 4!.....+ 20!
1.实验代码
public class tang { public static void main(String[] args) { // TODO Auto-generated method stub long x=1,sum=0; for(int i=1;i<=20;i++) { x=i*x; sum=sum+x; } System.out.println(sum); } }
2.实验结果
四.
计算8+88+888+8888+.....前十项之和
1.实验代码
public class tang { public static void main(String[] args) { // TODO Auto-generated method stub long x=0,y=0,z=0,sum=0; for(int i=0;i<10;i++) { y=8*(long)Math.pow(10,i); z=x+y; sum=sum+z; x=z; } System.out.println(sum); } }
2.实验结果
五.找完数
一个数如果恰好等于它的因子之和,这个数就称为完数。编写程序输出1000以为的所有完数
1.实验代码
public class javaa { public static void main(String[] args) { // TODO Auto-generated method stub int sum; for(int i=1;i<=1000;i++) { sum=0; for(int j=1;j<i;j++) if(i % j==0) sum = sum + j; if(sum==i) System.out.print(i+" "); } System.out.println(); } }
2.实验结果
六.
输出满足1+2+3+....+n<8888的最大正整数
1.实验代码
package main; public class lomi { public static void main(String[] args) { // TODO Auto-generated method stub int i=1,sum=0; int N=0; while(sum<8888) { i++; sum = (i*i+i)/2; } N=i-1; System.out.print(N); } }
2.实验结果
7.用for循环打印下面图形
1.实验代码
package aaaa; public class kkk { public static void main(String[] args) { int n=5; for(int i=0;i<=5;i++) { for(int j=0;j<=n-i;j++) { System.out.print(" "); } for(int k=0;k<=2*i-1;k++) { System.out.print("*"); } System.out.println("*"); } } }
2.实验结果