黑马程序员_Java入门_Go

来源:互联网 发布:炒股软件免费 编辑:程序博客网 时间:2024/06/11 23:20

今天是我写博文的第一天,看了几天的书和视频了,该写点东西出来了。好的,就从Java的基础开始吧。

首先,谈谈Java本身。Java,一门简单、面向对象、分布式、解释、健壮、安全、与平台无关的并且性能优异的多线程动态语言。入门的时候看到这些解释的时候我突然就费解了,太多了,这解释不等于没说吗。但别急,黑马的视频里,老师会一一为我们解开。

而我做的第一件事是了解编程语言的历史。简单的一句话:计算机语言经历了机器语言、汇编语言、高级程序设计语言及面向对象程序设计语言4个发展阶段:

1、机器语言,就一串二进制,只有计算机能识别。

2、汇编语言,它可以将计算机指令映射为一些内容,可以被人们看懂和读取了,但是离人们的思维还是很远。

3、高级程序设计语言,提高了语言的识别能力,程序中可以采用具有一定含义的数据命名和容易理解的执行语句。(发展到20世纪60年代的时候出现了结构化语言,比如C语言等。规定了3中基本结构,即顺序结构、选择结构和循环结构,每个结构都必须单入口和单出口,保证了可读性和可维护性。)

4、面向对象的程序设计语言,可以直接描述客观事物以及它们之间的联系,将客观事物看做具有属性和方法(行为)的对象。比如c++,java。

而java便是第4个阶段的杰出代表。要学习java,就得边动,边学。所以我就开始和老师学习java的配置了,下载完JDK后,就是path,classpath等环境变量的配置了。简单说,环境变量的配置,Path首先查找的是当前目录,classpath首先查找的是配置的变量。(*注:classpath的配置,最好不要+分号,因为+了分号,找完你配置的classpath路径后,还要找你当前目录,所以如果当你配置的classpath的路径中没找到文件后,得到的文件就是你当前目录的了,则容易造成输出的不是你要找的东西。)

配置完后,在dos环境下,输入java,javac,出一串东西,就说明你的path路径配置成功了。然后自己在跟毕老师(黑马的老师)视频里一起输入“hello,java”的程序后,自己更改classpath路径,在各种盘符里面试,如果出现“找不到或无法加载主类”这种错误时,说明你的classpath路径配置错误了要不就是你的类名和你文件名不一样,导致运行文件错误。然后自己思考或者回看毕老师的视频,调试几下就OK了,这样classpath也就真正理解了。(至少我是这么干的,当时我记得我找这个错误百度了好几次,才知道是classpath的问题,调试了许久,才从理论到真正的理解了classpath的定义)。

说完配置,就到java的一些基础了,本人学的不好,就随便写一些吧。

1、java标识符

包名:所有字母小写  比如:aabb

       类名接口名:首字母大写   比如:AaBb

       变量名函数名:首字母小写后面小写   比如:Aaba

       常量:所有字母大写。  比如:MAX

2、java的一些基本转换

十六进制与二进制的转换:

如0101 1010转为16进制

把每四位看成一体,转为16进制

        5         A

所以结果就是5A,而为了区分十六进制,前经常加0x,所以结果就是 0x5A

二进制与八进制间的转换与十六进制与二进制的转换原理类似,十六进制是后四位,2的3次幂,八进制则就是后三位,2的3次幂。

3、java 的部分转义字符

\n:换行

\b:退格

\r:按下回车键。window系统,回车符是由两个字符来表示\r\n

\t:制表符,相当于tab

4、java的部分运算符

异或,两边相同结果是假,两边不同结果是真

&&只要左边是假的,右边就不进行运算了,直接判断为假

&无论左边的真假,右边依然进行运算  ||与|雷同

位运算,是二进制运算3<<2

左移其实就是该数乘以2的所移数位的次方

右移就是该数除以2的所移位数的次方

右移后最高位要补的数要看原来的数的最高位,最高位是1,就补1,如果用>>>右移,最高位都用0补。

***********************这里就放一个毕老师的例子吧:挺有意思的:

/** 就是要把n,m进行交换,假设n=6,m=8(3种方法)

1、有第三方函数

t=n;n=m;m=t; //特点:开发容易,阅读性强

2、没有第三方函数了,相加减法

n=n+m; // 6+8=14

m=n-m;// 14-8=6

n=n-m;// 14-6=8  (其实就是一个数学的逻辑方法)

3、没有第三方函数,异或法

n=n^m ;

m=n^m; // m=(n^m)^m=n 一个数异或同一个数等于这个数 

n=n^m // 同上,最后是 n=m,  所以n,m就这样神奇的交换了

**//

5.java的语句

1、条件语句

If,switch语句

关于if的例子,自己根据毕老师要求,调试成功的

//需求1:根据用于定义的数值不同,打印对应的星期英文。

public class FTD1{

    public static void main(String args[]){

           int day=5;

          if(day==1)System.out.print("monday");

 else if(day==2)System.out.print("Tuesday");

else if(day==3)System.out.print("Wednesday");

else if(day==4)System.out.print("Thursday");

else if(day==5)System.out.print("Friday");

else if(day==6)System.out.print("Saturday");

else if(day==7)System.out.print("sunday");

    else if(day>7||day<1) System.out.print("该星期不存在");        

}

一句话,If语句很简单,就是表达式OK了,那么久执行下面的语句,不OK就跳。

而switch也差不多,只是和if还是有区别的,他的特点如下如下:

1、switch语句悬着的类型只有四种:byte,short,int,char.

2、case之间与default没有顺序,先执行第一个case,没有匹配的case执行default

3、结束switch语句的两种情况,遇到break,执行到switch语句结束。

4、如果匹配的case或者default没有对应的break,那么程序会继续向下执行,运行可执行的语句,直到遇到break或者switch结尾结束。

而什么时候用if,什么时候用switch呢?

如果判断的具体数值不多 ,而是符合byte,short int char这四种类型,虽然两个语句都可以使用,建议使用swtich语句,因为效率稍高。

其他情况:对区间判断,对结果为boolean类型判断,使用if,if的使用范围更广。

 

 

2、循环语句(for、while、do while)

这3种方式都是循环语句,挺像的,所以各自特点就不写了。就写一些不一样的地方和容易出错的地方吧。

**********1、for和 while的区别

1.变量有自己的作用域,对于for来讲,如果将用于控制循环的增量定义在for语句中,那么该变量只在for语句内有效,for语句执行完毕,该变量在内存中被释放。而对于while来讲,定义的变量在while语句之外,执行完语句后,变量依然占有内存。

2.for和while可以进行互换,如果需要定义循环增量,用for更为合适

3.当一个变量在循环后还需要使用,则使用while更合适;

**********2、还有for和while的一些表现形式,刚开始我以为是错误的,后面看了毕老师的视频,才知道,原来这是对的~~~

for的几种表现形式

1、和while很像的一种形式

  for(int y=0;y<3;y++){

}

是可以 等于 

int y=0

for( ;y<3; ){

y++;

}

只是这个形式和 while一样,所以没有人写,但是这种形式并不是错的,至少以后看见了,别认为是是错的就好。

2.for和while的最简单 表现形式:

for(;;){}

while(true){}

******************************3、还有一点容易忽视的地方,关于while和do while

while(x){}  //这后面是不用加“;”的。

但是 do{}

While(x); // 这里要要加上”;”

************************什么时候使用循环结构呢?

1.当要对某些语句被执行很多次

2.当某个变量有规律,并需要被执行很多次时

就要使用循环结构;

 

心得:O了,今天就写到这里吧,这些只是java的一些基础,主要是把自己的一些知识和理解给整理出来,而写了之后对自己加深基础知识有很大的帮助。对于java的基础知识,还有很多没写到,写得不好的,请勿怪。

原创粉丝点击