第一章学习笔记

 一·教材学习内容总结

1、Java是一种跨平台、面向对象的编程语言。

2、Java的网络地位

3、Java反编译

4、两种编程风格:Allmans风格(独行)以及Kernighan风格(行尾)

5、使用Random类中的next..方法得到随机均匀的随机数。


		//生成一个Random类对象random
		Random random=new Random();
		//依次使用next..方法
		boolean bo=random.nextBoolean();
		int in=random.nextInt(1);
		double dou=random.nextDouble();

依次输出bool、int、double的随机数字:

6、使用intersects方法进行矩形碰撞测试


    //碰撞测试方法A
	public boolean isHitA() {
        //先定义两个与矩形A、B重合的Rectangle对象
		Rectangle rA=new Rectangle(A.getX(),A.getY(),100,100);
		Rectangle rB=new Rectangle(B.getX(),B.getY(),100,100);
        //使用intersects方法进行碰撞判断	
		if(rA.intersects(rB)) {
			return false;
		}else {
			return true;
		}
	}
	//碰撞方法B,与碰撞方法A类似
	public boolean isHitB() {
		Rectangle rA=new Rectangle(A.getX(),A.getY(),105,105);
		Rectangle rB=new Rectangle(B.getX(),B.getY(),105,105);
		if(rB.intersects(rA)) {
			//System.out.println("sdas");
			return false;
		}else {
			return true;
		}
	}
	
	

操作的思想是将生成的两个Rectangle对象rA、rB依次依附在矩形A、矩形B上,借助intersects方法使矩形间产生碰撞现象。

二、教材学习中的问题和解决过程

暂无

三、学习思考与感悟


学习编程初时,字里行间的代码在我看来,总是那样的整齐规则而又深赋美感,虽然不太了解这些数字符号变换组合后的意义和奥妙,但总有一种思想始终萦绕在我脑海中:编程总是确切的,我们要尽力消除程序存在的各种随机性,因为随机代表着不稳定,不稳定的因素一旦增多,问题便会接踵而至。那时的我,还天真的认为不稳定因素是程序员们的大敌,虽然直到现在我还保留着这些思想,可比起那时的自己,这种过于绝对的思想多少还是改变了一点,渐渐认可了随机性在应用方面不可或缺的特点。反过来说,一切事物都有两面性,如何应用好这些事物,需要我们很长很长甚至是一生的时间去不断摸索不断领会,当然,这一切的起点都是从认知开始的。
随机数就是随机性的一个实例,看似不稳定的随机数却能够为我们带来许多便利。比如在某些多线程对象的行为控制中,随机数的存在能够使这些线程对象不受人为的控制,自由自在地行动,在各种各样的循环语句中不断地取得随机数,不同的数字不同的组合间,到也似生命般的盈动。
Random类的知识在书本的p23有所提及,与我曾使用过的同类方法有所不同的是这个next....方法。

以往使用的方法:

this.direct=(int)(Math.random()*4);

Java包中的知识实在太多,即便是功能类似的方法也不计其数,立足当下,着眼未来,只有踏踏实实地走好每一步,不断地学习新知识新内容充实自我,才能更好的掌握编程这门技能,在计算机的世界里,不进则退。

四、学习进度条

    代码行数(新增/积累)  博客量(新增/累计) 学习时间(新增/累计)    重要成长
    目标               7000行             30篇               400h  
  第一周              378/378              2/2              14/14  

猜你喜欢

转载自blog.csdn.net/Huangxu_MIKU/article/details/82725353