java 学习总结

        面向对象理解

           经过两个月的java学习,渐渐的对java这个东西有了一定的认识。它是一中面向对象的编程语言,怎么解释这句话呢?借网友一个比喻:

用面向过程的方法写出来的程序是一份蛋炒饭,而用面向对象写出来的程序是一份盖浇饭。所谓盖浇饭,就是在一碗白米饭上面浇上一份盖菜,你喜欢什么菜,你就浇上什么菜。
  蛋炒饭制作的细节,我不太清楚,因为我没当过厨师,也不会做饭,但最后的一道工序肯定是把米饭和鸡蛋混在一起炒匀。盖浇饭呢,则是把米饭和盖菜分别做好,你如果要一份红烧肉盖饭,就给你浇一份红烧肉;如果要一份青椒土豆盖浇饭,就给浇一份青椒土豆丝。

  蛋炒饭的好处就是入味均匀,吃起来香。如果恰巧你不爱吃鸡蛋,只爱吃青菜的话,那么唯一的办法就是全部倒掉,重新做一份青菜炒饭了。盖浇饭就没这么多麻烦,你只需要把上面的盖菜拨掉,更换一份盖菜就可以了。盖浇饭的缺点是入味不均,可能没有蛋炒饭那么香。

 到底是蛋炒饭好还是盖浇饭好呢?其实这类问题都很难回答,
非要比个上下高低的话,就必须设定一个场景,否则只能说是各有所长。
如果大家都不是美食家,没那么多讲究,那么从饭馆角度来讲的话,做盖浇饭显然比蛋炒饭更有优势,
他可以组合出来任意多的组合,而且不会浪费。 盖浇饭的好处就是"菜""饭"分离,从而提高了制作盖浇饭的灵活性。
饭不满意就换饭,菜不满意换菜。用软件工程的专业术语就是"可维护性"比较好,"饭" 和"菜"的耦合度比较低。
蛋炒饭将"蛋""饭"搅和在一起,想换"蛋""饭"中任何一种都很困难,耦合度很高,以至于"可维护性"比较差。软件工程
追求的目标之一就是可维护性,可维护性主要表现在3个方面:可理解性、可测试性和可修改性。面向对象的好处之
一就是显著的改善了软件系统的可维护性。

    

      类是java中一个基本的概念,至于什么是类呢?个人理解它为具有同一属性的一类东西的抽象称呼。例如鱼是一个类,但是鱼又可以分为好多种比如小鱼、大鱼……,如果用类和对象描述,鱼是类,而大鱼和小鱼都是具有特殊属性鱼,就是对象。进而可以说对象是类的实例化。至于类中的属性和对象中的属性的关系吗?对象中的属性是类的属性的子集,方法也是类的子集。类有内部类,匿名类,抽象类,接口,子类,父类。

     数据类型 

       数据类型分为基本的数据类型(8种)和引用类型。引用类型的例子,例如自己定义了一个Student类,利用这个类产生一个Student的变量a,语法为:Student  a=new  Student();那么a 在这里就是一个引用类型的变量。概况的来说大多数引用类型的变量是自己定义的,像string这个引用类型的数据是java封装好的类型,直接可以拿来用。

      方法(函数)

       方法就是一个具有独立功能的代码组合。例如想要获得一个类里面的私有变量(age),那么就可以利用getAge()这个方法去获得age这个变量。方法与数据分不开,它是对数据的处理和加工。有些方法可以把数据保存的,进而实现数据持久化的功能。例如I/O里面的write()和read()方法。就可将数据从程序中写到txt文档上或从文档上读到程序中。特殊的方法有toString(),equals(),hashCode();前面三个方法一般情况下需要重写。另外还有一个对属性值进行批量赋值的构造方法 。

     集合

    集合的概念就是一个容器,这个容器里面可以放各种各样的数据,如果想要指定放人的数据类型,可以利用泛型这个方法来实现,比如List<Student>   stu = new ArrayList();  则集合stu里面只能存student类型的数据了。集合最大的作用可以大批量的存放数据,这个存放不是持久性,意思是只要关机集合里面的数据就会从内存中消失 ,要想将集合中的数据变为持久性的数据,就需要利用 io流里面的读和写方法,或者利用jdbc和hibernate来实现数据的持久化。常用的集合有ArrayList<E>,    LinkedList<E>,        HashSet<E>,     TreeSet<E> 。 

   修饰符 

                                                  访问修饰符  

名称                                           说明                                                     备注
 
public                         可以被任何类访问
  
protected    被同一包中的所有类访问被所有子类访问            子类没有在同一包中也可以访问
 
private                    只能够被当前类的方法访问
  
 
default(无访问修饰符)可以被同一包中的所有类访问       如果子类没有在同一个包中,也不能访问

                                                                修饰符
 
名称                                  说明                                                                      备注
 
static 静态变量(又称为类变量)可以被类的所有实例共享 。   并不需要创建类的实例就可以访问静态变量

 
final常量    值只能够赋值一次,不能更改          可以同static一起使用,避免对类的每个实例维护一个拷贝


 

 


 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值