2017国庆假期学习总结

  从下定决心要开始学习Java开始,我状态进入得算比较快。3号装上了J2SE 9,后来又装上Eclipse,发现9不支持Eclipse,换上8。开始用的是Notepad++,但毕竟不如其它IDE全面,又试了NetBeans,最后定下来要使用Eclipse,配置好环境变量,算是进入正轨了。

  这篇随笔自上而下地梳理一下这几天学到的东西。

  计算机系考研专业课四门:数据结构、计算机组成原理、操作系统以及计算机网络,在以上课程基本原理的基础上,利用编程语言编写代码控制计算机行为,可以完成预期的任务。

  从前用Matlab以及Fortran,都是面向过程编程,这几天花时间最多的地方,可能就在建立面向对象编程的概念了。Java语言是编程语言中应用较广泛的语言,采用面向对象的程序设计思路,与面向过程的程序设计的最主要区别是,它将任务分成若干个具有一定状态和行为的对象,对象之间相互发生关系,达到完成预期任务的目的;而面向过程程序设计则按照任务完成的先后顺序组织代码。面向对象主要应用在大型任务场合,主要优点是其拥有良好的封装性,各个类内部变量不会影响其它类的变量,也不会受其它类内部变量的影响。

  一个Java程序由许多个类组成,最好将每个类放在一个.java文件中,如果多个类放在一个.java文件,里面应只有一个public类,public类应与文件名同名。可以调用一个包(package)下的所有类。

  类的格式:

public class Car{
}

  或者:

class Car{
}

  一个类中有成员变量(对应对象的状态)和方法(对应对象的行为),以及一个或多个构造器。

  成员变量、方法和构造器的格式

  成员变量:

private int color;
private int speed;   //int是基本类型
private Engine engine;//Engine属于引用类型

  方法:

public double getSalary{
}

  一个特殊的方法是main方法,这是Java程序的入口,任何Java程序的代码都是从这个方法开始执行的。

public static void main(String[] args){
}

  构造器:

public static Car{
}

  构造器用于new时使用,建立一个新的对象,必须有。

  以下面的方法为例

public static void main(String[] args){
}

  public、private、protected称为关键字,public表示任何类都可以访问该成员(或方法),private表示仅该类自身可以访问该方法,protected表示该类自身及其子类可以访问该变量(或方法),没有修饰则表示同一个包下的类都可以访问该成员变量(或方法)。

  static表示静态静态变量或者静态方法。由于类通常会实例化为多个不同的对象,如果不加static,则系统会给每个对象的变量分配(方法会分配空间吗?),但如果加上static,则只会为其分配一个空间,所有对象里对该变量的操作均会改变该变量(即所有对象的static变量都指向同一个内存空间;static变量只执行一次)。

  void表示返回值为空,方法可以有返回值,类没有。

  main为方法名,main表示主方法;

  String表示输入参数的类型。类中、方法中的参数都需定义类型,Java提供了8种基本类型以及引用类型。8种基本类型包括整型(byte、short、int、long),浮点型(float、double),字符类型和布尔类型;引用类型包括字符串(?)、数组等,对象引用也属于引用类型。

  args表示参数名,参数名、类名命名采用驼峰命名法,即名字第一个字母小写,单词首字母大写(如testMyFirstExample)。

  一个类中可以有多个同名的方法,但输入参数需不一样;构造器可以有多个,同样输入参数也要不一样。

  可以在类的内部使用本类的方法和变量。

  对象里的变量存储在堆中(存的实打实的变量),对象变量(对象的引用)存储在栈中(存的地址)。

  栈(stack)先进后出,队列(queue)先进先出。

  泛型的使用:泛型用在类中叫做泛型类,泛型类将数据类型作为参数传入类中:

public class Point<T>{    //Point是类名,<T>是泛型参数类型
private T point;
}

  传给泛型的参数类型必须为引用类型,如为基本类型需将其包装成引用类型,如int->Integer。

  泛型也可应用在方法中,不要求该方法所属的类为泛型类。

public static <T> void getResult(T[] objects){
  if (objects != null) {
    for(T element : objects){ System.out.printf("%s",element); } } }

  大致总结如上,写出来思路清晰多了。

 

转载于:https://www.cnblogs.com/lilei94/p/7638751.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值