黑马程序员_java基础

------- android培训java培训、期待与您交流! ----------

 

 

主方法的作用:保证java程序执行。

类名首字母大写,有多个单词构成的,没个单词的首字母都要大写。

 

 

1、找不到.java文件。

    路径错误或文件名错误

2、错误:找不到或无法加载主类。

    jvm(虚拟机)没有找到要运行的类

3、错误:在类中找不到主方法,请将主方法定义为。

    类中没有定义主方法或者主方法写错。

4、错误:非法字符。

    代码中出现中文字符

 

配置有classpath,虚拟机找classpath路径,没有配置classpath就默认当前路径为class path路径;

如果classpath=c:\javaapp不加分号,就只访问classpath路径;加分号classpath=c:\javaapp;classpath和当前目录都要访问。一般情况下,是不加分号的。

如果要访问当前目录,在设置classpath时加点:set classpath=.;c:\javaapp 。 .代表前面的路径。(表示先找当前的目录,在找设置的classpath目录)

 

关键字:被赋予了特殊含义的单词

标识符:在程序中定义的一些名词(数字、字母、_、$,数字不可以开头,不可以是关键字)

注释:对程序进行说明的文字

      作用  1、对程序进行说明

   2、调试程序

      注意:在多行注释里面不要嵌套多行注释;在写代码的时候要写注释

 

字符:''单引号,里面只能有一个 例:'a'、'1'是,'12'不是

字符串:""双引号,

 

十进制-->二进制。 除以2取余数

二进制-->十进制。 乘以2的次幂

负数的二进制就是正数的二进制取反+1, 负数的二进制最高位都是1 ,二进制位都是1,对应的十进制 是-1.

 

为什么要定义变量:用来不断存放同一类型的常量,并可以重复使用。

    定义变量的格式:数据类型 变量名 = 初始化值

    java语言是强类型(有严格的划分)语言

    强制转换

 

模运算:任何数模运算,结果不是0就是1,可以用来进行开关运算,任何数进行模运算结果都比模数小

 

逻辑运算符:用来连接boolean型表达式的。

   &(与)、|(或)、!(非)、^(异或)

   &&(逻辑与)--当左边为false,右边不参与运算

   ||(逻辑或)--当左边为turn,右边不参与运算

&与&&的区别:

  &:两边都参与运算

  &&:当左边为false,右边不参与运算

|和||的区别:

  |:两边都参与运算

   ||:当左边为turn,右边不参与运算

 

位运算:(优点:运算速度快,局限:只能进行二进制的运算)

   左移:就是乘以2的次幂运算,移几次就是几次幂。(右边补0)

   右移:就是除以2的次幂运算,移几次就是几次幂。(左边补0,最高位判断正(0)负(1)是不变的)

   无符号右移:无论原最高位是什么,移动后空位都补零。

对二进制进行&、|、^、~运算(0代表假、1代表真):

   &与运算:上下两位全为1(真)时才为1(真),其余都为0(假).可用于获取二进制中的有效位1.

   |或运算:上下两位全为0(假)时才为0(假),其余都为1(真)。

   ^异或:上下两位相同时为0(假),不同时为1(真)。一个数异或另一数两次,结果还是这个数。

   ~取反:对而进行进行取反操作.

 

三元运算符是if  else的简写格式。

区别:不是所有的if else都能简化,因为所有的三元运算符运算完都必须要有结果,而if else则不然

 

switch和if的区别?

if可以用于判断数值,也可以判断区间。只要运算结果是boolean类型,都可以进行判断。

switch用于对固定的几个值,进行判断。判断的类型有限。

 

循环结构:(while、do while 、for)

当对某些语句需要执行很多次时,就使用循环结构。

while与do while的区别?

while先判断后执行,

do while先执行后判断,无论条件是否满足,循环体至少执行一次。

while和fo

for定义的变量是局部变量,

 

break:使用范围:switch  循环语句,跳出本层循环。

continue:只作用于循环结构,跳出本次循环,进行下一次循环。

break和continue都可以跳出指定循环。

 

函数:

   修饰符  返回值类型  函数名(参数类型 形式参数1,参数类型 形式参数2,...)

   {

          执行语句;

 return 返回值//return关键字是用于结束该功能,并将后面的具体结构返回给调用者。

//函数中必须有return语句

//注意:函数的返回值类型是void时,return语句可以省略不写。

//void表示没有返回值的情况

   

三要素:返回值类型、函数名、参数列表

 

如何定义一个函数?

   函数就是一个功能。

      功能需要两部分:1、结果,2、未知内容

      明确1:这个功能的结果是什么?

      明确2:这个功能需要未知内容是什么?

 

重载:一个类中出现同名的函数,只要他们的参数个数或者参数类型不同,就称之我函数的重载-overload和返回值的类型无关。

 

数组:同一类型数据的集合(是一个容器)

元素类型[] 数组名 = new 元素类型[元素个数或数组长度]

例:int [] arr = new int[3];

下标都是从0开始的。

好处:可以存储多个数据,而且可以对数组进行编号,从0开始,操作元素完成可以通过编号(索引)完成

 

java对内存空间的划分:五部分

   栈,堆,方法区,本地方法区,寄存器。

栈内存:存储的都是局部变量。

       

堆内存:存储的都是实体(对象)。凡是new创建的都是。每一个实体都有一个首地址值。

        堆内存的变量都有默认初始化值,不同类型不一样,int-0,double-0.0

当实体不在使用时,就会被垃圾回收机处理。

数组格式二:int [] = {23,34,45};  int [] arr = new int []{23,34,45};

数组长度:arr.length

 

 

你可能感兴趣的:(java基础)