A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

关于黑马JaveEE基础班学习经验总结
        前言:此帖仅为本人学习路线图,经过本人验证后得到的一些经验之谈.无关学习问题且不回复.
                   马上就要迎来就业班了,如今将本人在黑马这一个月的学习经历进行总结,
关于Java而言,大家都不会陌生,它是能让所有Coder都表示强大的语言!它的强原大没有之一,它什么都很强,前端到后端,嵌入式到服务器,在Java类型的Coder眼里,”万物皆对象!”如果一个对象解决不了的问题,那么我就用两个~,不要说我是”万金油”,请叫我身后有无数的库在支持我.嗯,我就是很强…
                   Java难吗?难!真的难!;Java简单吗?简单,真的简单!;
                   用心!
                   言归正传,以上是本人自己的感受,

                   从第一天的学习看来,系统的学习了Java语言的发展,Java语言的环境变量, JVM,JRE,JDK的概述, Java中数据类型的分类,这四个大块;当然也码了人身中的第一段代码
“HelloWorld”;喜悦感讲真袭面而来~来点干货:
环境变量操作步骤以及注意事项:
         为什么要配置
–     程序的编译和执行需要使用到javac和java命令,所以只能在bin目录下写程序
–     实际开发中,不可能把程序写到bin目录下,所以我们必须让javac和java命令在任意目录下能够访问
如何配置
–      创建新的变量名称:JAVA_HOME
计算机-右键属性-高级系统设置-高级-环境变量-系统变量
–      JAVA_HOME添加变量值:JDK安装目录
–      path环境变量最前面添加如下内容
%JAVA_HOME%\bin;
         HelloWorld 案例:
  public class HelloWorld {
  public static voidmain(String[] args) {
      System.out.println("HelloWorld");
  }
}

       数据类型:
基本数据类型
                   引用数据类型

      Jvm,Jre,Jdk 三者之间的关系:
       1.什么是JVM
JVMjava虚拟机(JVM Java Virtual Machine)java程序需要运行在虚拟机上,不同平台有自己的虚拟机,因此java语言可以跨平台
2.什么是JRE
包括Java虚拟机(JVM Java Virtual Machine)Java程序所需的核心类库等如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可。
        JRE:JVM+类库
3.什么是JDK
JDK是提供给Java开发人员使用的,其中包含了java的开发工具,也包括了JRE。所以安装了JDK,就不用在单独安装JRE了。
其中的开发工具:编译工具(javac.exe)  打包工具(jar.exe)
JDK:JRE+JAVA的开发工具。
JDK,JRE,JVM的作用和关系
JDK包含JRE 和开发工具包
JRE 包含核心类库和JVM


                   预想学其精通,必先利其器!  关于Java的基础了解以上.



自第二天后本人会将本人的觉得重难点标记出来!望各位同学参考!

算符: 对常量和变量进行操作的符号称为运算符.
              ++,--运算符:对变量做加1或者减1的操作, ++或者--既可以放在变量的后面,也可以放在变量的前面单独使用的时候,++或者--无论是放在变量的前面还是后面,结果是一样的。
参与操作的时候:
                   如果++或者--在变量的后面,先拿变量参与操作,后变量做++或者--
                   如果++或者--在变量的前面,先变量做++或者--,后拿变量参与操作
逻辑运算符:         &  ,  |  ,  ^  ,  !  && ,  ||
         a:逻辑运算符一般用于连接boolean类型的表达式或者值。
         b:表达式:就是用运算符把常量或者变量连接起来的符合java语法的式子。
                            &逻辑与:有false则false。
         |逻辑或:有true则true。
         ^逻辑异或:相同为false,不同为true。
         !逻辑非:非false则true,非true则false。


三元运算符:                  (关系表达式)?表达式1:表达式2
如果条件为true,运算后的结果是表达式1
如果条件为false,运算后的结果是表达式2
选择流程控制语句:                   If语句;   
                  If(判断条件语句){
                   语句体;
}else if (判断条件句){
语句体;
}….
….
}else {
语句体;
}


      switch语句:表达式的取值:byte,short,int,char
JDK5以后可以是枚举
JDK7以后可以是String
case后面跟的是要和表达式进行比较的值
语句体部分可以是一条或多条语句
break表示中断,结束的意思,可以结束switch语句
default语句表示所有情况都不匹配的时候,就执行该处的内容,和if语句的else相似。


循环流程控制语句:         For          While                Do While
For:
for(初始化语句;判断条件语句;控制条件语句) {
循环体语句;
    }
While:
初始化语句;
   while(判断条件语句) {
循环体语句;
控制条件语句;
Do While:
初始化语句;
   do {
循环体语句;
控制条件语句;
} while((判断条件语句);

经过三天的基础学习,单一的联系使用语句并深加练习;
接下来进行知识的归纳使用:

数组
动态初始化: int[] arr = new int [数组长度];
静态初始化: int[] arr = { }; int[] arr = new int[] { };
数组是由元素组成的,代表元素的成为索引;
arr[0]:表示 数组arr 中的第一个元素;
为什么使用数组的遍历?
为了得到数组中的每一个数, 提高代码复用性;
数组的遍历:

int[] arr = {1,2,3,4,5,6};

for(int i = 0;i<arr.length;i++){ //arr[]通过索引结合进行表达数组中的数值

syso (arr ); //因为在循环中 arr,代表了数组中的每一个元素
syso(arr)意思就是将数组中的元素进行打印!
}
方法的定义:
方法就是完成特定功能的代码块
方法的格式:

修饰词 返回值类型 方法名(数据类型数组名1,数据类型 数据名2......){

方法体;
return 返回值;
}
方法的调用:
单独调用:没有意义
输出调用:直接输出方法;
赋值调用:用一个变量来接收return回来的值;
返回值类型 明确功能结果的数据类型
参数列表 明确有几个参数,以及参数的类型
方法中参数传递:
方法的参数是基本类型的时候
   形式参数的改变不实际参数。
  形式参数:用于接收实际数据的变量
  实际参数:实际参与运算的变量
引用类型的参数传递:
形式参数的改变会影响实际参数,
原因是因为,引用类型的数据存在堆内存中,
可以有很多个引用执行的,很多个引用共享他。
基本类型的参数传递:
例: public class Saaaaa {
public static void main(String[] args) {
int a =10;
int b = 20;
System.out.println(a+b); 30
System.out.println(b); 20
abc(a,b);
System.out.println(a); 10
System.out.println(b); 20
}
public static void abc(int a,int b){
a = a+b;10+20
b += a;30+20
System.out.println(a); 30
System.out.println(b); 20
}
} 输出内容:
30
20
30
50
10
20
引用类型参数传递;
在方法内 形式参数发生改变,实际参数也发生改变.
方法的重载:
在一个类中,如果出现方法名一样,参数列表不一样(参数个数;参数类型)
方法名必须相同,参数列表必须不同,返回值无关.
例题:比较两个数是否相等
public static int sum(int a ,int b ,int c){
return a+b+c }
public static int sum(double a ,double b ,double c){
return a+b+c }
public static int sum(int a ,int b ,int c,int d ,int e){
return a+b+c+d+e }

public static int sum(double a ,double b ,double c,double d,doublee,double f){

return a+b+c+d+e+f}
以上都可以作为数组的重载使用;



面向对象!!!!!
面向对象的基础:
A 面向对象思想概述及举例
(面向过程是直接使用功能)
强调对象 通过对象,然后由调用功能;
A:是一种符合我们思考习惯的思想;
B:可以将复杂的事情简单化;
C:将我们从执行者变成指挥者.
B.类与对象及其使用
类:是一组相关的属性和行为的集合;(体 现现实事物的)

事物:

属性:事物的描述信息

行为:事物能够做什么;

对象:该事物的具体体现;
成员变量:表示事物中的属性.
成员方法:在类中不需要我们赋值(与之前的变量定义一样);
C.对象的内存图
D.成员变量和局部变量的区别
E封装(private)
是面向对象三大特征之一
是面向对象编程语言对客观世界的模拟,客观世界里成员变量都是隐藏在对象内部的,外界无法直接操作和修改。就像刚才说的年龄。
将不需要对外提供的内容都隐藏起来。
把属性隐藏,提供公共方法对其访问。
成员变量private,提供对应的getXxx()/setXxx()方法
通过方法来控制成员变量的操作,提高了代码的安全性
把代码用方法进行封装,提高了代码的复用性
F.This关键字
G.构造方法
H.类名作为形式参数和返回值;



以上为基础班前八天的学习内容,本人仅将本人觉得重难点,标注出来,
总归一句话,任何知识点都不要放过!那将是未来就业后的薪资标准,
随后内容,本贴会将在4.2日之前再作以补充,
与君共勉!








0 个回复

您需要登录后才可以回帖 登录 | 加入黑马