JAVA学习1基础部分

这篇JAVA学习笔记涵盖了基础概念,如软件和程序、计算机语言的发展、程序设计步骤、JDK安装与环境配置,以及Hello World程序。文章还讨论了JAVA的技术特点,包括简单性、面向对象、平台无关性等。此外,介绍了语法基础,如注释、数据类型,以及程序流程控制中的条件语句和循环语句。
摘要由CSDN通过智能技术生成

JAVA学习笔记

第一章:JAVA基础概念

第一天

一、软件基础等概念

1.软件和程序

软件的定义:一系列按照特定顺序组织的计算机数据和指令的集合。

                                                           数据

 

 

软件                                                                                                                                                      

                                                                                                                                              

                                                           很多程序

程序:完成指定功能的一条指令(双击的时候不能进入下一级目录,直接可以执行的比如.exe)。

2.计算机语言的概念及发展

计算机语言:用于人与计算机之间通讯的语言。

                                                                                                     机器语言

低级语言                        

汇编语言

                                                

                                                 

 

计算机语言

 

 

结构化 Fortran语言,Basic语言, C

 

 

高级语言

 

 

面向对象 C++,Java,C#

 

                                                                                                    

 

 

机器语言:由一段01的二进制代码所组成的语言。机器语言是直接由电脑CPU进行执行。

                     优点:直接执行、速度快、资源占用少。

                     缺点:可读性、可移植性、编程繁杂。

汇编语言:优点:目标代码剪短、占用内存少、执行速度快、能访问、控制各种硬件设备。

                     缺点:和机器语言一样是低级语言,难学,难写,难记忆。

高级语言:面向过程和面向对象的语言。

3.程序设计

例子:建一座房子,房子几层楼,房子的大小,占地面积,使用材料,门开几扇,窗户开几扇?

        开发一个软件:软件的功能,软件的开发环境,使用什么语言开发?软件中涉及的模型,数据结构和算法是什么?

1)程序设计的步骤如图:

       

2)算法

算法:解决某一问题的方法和步骤。

        举例(C#提及的黑蓝墨水换瓶子的问题,利用一个新的瓶子)

算法的表示(流程图)

        原则上说,算法可以用任何形式的语言和符号来描述。伪代码和流程图

4.JDK的安装和环境变量的配置

Oracle官网下载jdk对应版本,安装以及将bin目录配置到path系统变量中,具体步骤不再赘述。

5.Hello world 第一个程序的问题总结

        细节(今天提问答错)

System.out.print(); 如果没有ln ,括号中输出一个空字符串但是没有双引号这条程序是错误的,会报错。

因为输出语句system.out.println()的意思是即使括号内没有双引号,ln依然代表了一个输出,相当于system.out.print(“\n”);相当于有一个换行的输出。

 

public classHello

{

        public static void main(String[] args)

        {

                 System.out.println("Hello,World!");

        }

}

解释:

class :类的标志

public :公共的(访问修饰符)

static:静态的(可选修饰符)

void:无(返回类型)

main:方法名(主方法)

String[] args:参数列表

System.out.println"*”):输出,注意有两种形式

类名Hello:需要符合规范,与文件名相同,首字母大写,大小写敏感,多个单词每个单词首字母大写。

二、JAVA的技术特点

1.        简单性

2.        面向对象的语言(OO

3.        一种与平台无关的语言

4.        健壮性和安全性

5.        多线程

复习

1.        什么是软件?和程序是什么关系?   

 

2.        计算机语言的发展?

3.        程序设计的步骤?

4.        程序中的错误的分类?

5.        什么是JDK ?什么是JRE

JDKJava Develop kit  java开发工具包

JREJava运行环境。Javaruntime environment

6.        什么是class文件?

7.        什么是JVM?有什么作用?

8.        Java代码的执行流程?

9.        JVM的工作流程?

10.    JIT是什么?有什么作用?

 

 

 

 

 

 

第二章:语法基础

第二天

一、注释

1.        单行注释: //  快捷键 ctrl +

2.        多行注释: /*内容*/ 

3.        文档注释: /**内容*/

4.        快捷键:        Alt+/ 包括主函数,输出语句等等快捷键。

 

二、语法基础       

                                                           关键字

 

JAVA中的单词                      保留字

                                                          

                                                           标识符

1.        什么是关键字?(书P242-1表格,但不需要记)

在语言中具有特殊的含义,并不能随意使用的单词。在java中有两个特殊的关键字,constgoto,不能再java中使用。

2.        保留字

保留字具有一定的含义,但不是关键字。只有三个,truefalsenull

3.        标识符(变量名、方法名、类名等等)

用户自定义单词,但需要按照规定书写。

l  标识符不能是关键字或者保留字

l  标识符由字母、数字、下划线和美元符号组成

l  标识符不能以数字开头

l  标识符区分大小写,并且没有规定最大长度。(类名不区分大小写)

 

4.        数据类型

 

Java中具体来说具有11种数据类型

l  如上图,分为基本数据类型和引用数据类型

l  基本数据类型分为整型、浮点型、字符型、布尔型

                                      i.             整型:就是整数,继续分为四种:字节型byte,短整型short,整型int,长整形long

                                    ii.             浮点型:小数继续分为两种单精度float  双精度 double

 

                                   iii.             字符型:字符(abc……) char,字符也是用二进制进行存储的。A—65a97 ,并且字母顺序是连续的。

 

转义符:将某个字符原本的意义进行替换。

如:在一个语句中加上“”,为了让程序不以为它是语句的双引号,需要转义为没有特殊含义的“”。

java中,字符的默认值均为Unicode

                                   iv.             布尔型:true or false     boolean

l  进制的转换:

                                      i.             整型的转换

1.        二进制转十进制 1011010  110110  111011

2.        十进制转二进制101   125   33

                                    ii.             实型的转换

1.        十进制转二进制:10.625      13.125   51.8125

2.        二进制转十进制:11.11    101.101   1.111

5.        变量和常量

Java中存储值得方式有变量和常量

l  变量:在程序运行过程中可能发生改变的量

变量的书写方式:   数据类型变量名 = 值;例如:int  x = 1 0;

变量的书写有两种方式:1先声明后赋值。(int  x; x = 102,声明同时初始化。

l  常量:在程序运行过程中不变的量,例如圆周率。

常量的定义方式:final 数据类型变量名(全大写) = 赋值;

例如: final double PI =3.141592654

常量的值不能改变。

l  所有数据类型的定义

byte b= 1; shorts = 1; int I = 1; long l = 1;

float f = 1.0f;double d = 1.0;

char定义时有两种方式,一种是存储字符,一种是存储数值,在存储数值时会根据ASCII码表找到对应的字符进行存储。

char ch = ‘a’;char ch2 = 97;

boolean b =true;

自动类型转换:低类型自动像高类型转换。

强制转换类型:在该数值前加上(数据类型)即可。例如:(char97

                           会造成精度丢失的转换称为强转。

System.out.println(ch2+1);这句程序输出的是 98  为什么不是b?要输出b怎么办?

6    引用数据类型之字符串

                 String str = “字符串”; 双引号,这是跟字符型的区别。

字符串拼接:若+运算符两边有一个是字符串,则不再进行加减运算,而是拼接。

 

 

 

 

 

 

 

第三天

1.        运算符

a)        加减乘除、取模、拼接:+-*%+

b)        非:!

c)        取反减1~ 去比该整数相反数小1的数值

d)        移位运算符:>><< >>> 有符号和无符号(电脑计算中,最简单的计算乘法的方式是左移和右移,运算速度最快)

                                                                  i.             >>:将该符号的左边的数据转化为二进制,然后整个数据往右边移动。

                                                                ii.             <<:左移,将该符号左边的数据转换为二进制,然后整体左边移动,后面补0.

                                                               iii.             >>>无符号右移

e)        比较运算符:> <>=<=

f)         相等运算符:== !=

g)        位运算符:& | ^ 与、或、异或

h)        前置、后置:都是原有运算符上+1或者-1

                                                                  i.             前置:++a,--a

                                                                ii.             后置a++,a--;

i)          条件运算符:&& || & | 的区别

                                                                  i.             && 为短路与,|| 为短路或

                                                                ii.             区别:计算的区别,&& 在前一个条件为假的情况下不会判断后面的条件,同上,||在前一个条件为真的时候就不会判断后一个了,因此叫短路逻辑运算符。

j)          三目运算符:?:  if-else的缩减版。

k)        扩张赋值运算符:+= -=*= /= 扩展赋值时会自动进行类型转换)


 

第三章程序流程控制

一、流程控制语句(条件语句+循环语句)

        1.条件语句分为:if语句+switch语句

                 If(条件){表达式;}

Switch语句格式,格式不再说明,注意break,和穿透输出的特性。Switch语句可接受的数据类型是 byte short int char String 其中String类型是jdk7以后的。

 

第四天

二、循环语句

        1.什么是循环?

                 循环就是重复,循环中最重要的,就是找到循环的是什么。

2        循环语句

循环语句分为:for循环、while循环、do……while循环

1)  for循环

for循环的结构

for(表达式1;表达式2;表达式3{语句}

表达式1:起始赋值

表达式2:结束的依据

表达式3:循环变量的变化情况(可以增加也可以减小)

三个表达式告知了循环的次数

     语句:重复的事情

例如:输出1-100所有数值

forint i= 1i<=100;i++           

{

                  System.out.printlni;

}

例如:输出5099的数字

for (inti = 50; i <= 90; i++) {

                   System.out.println(i);

                }

例如:输出1-100的中的偶数

                                  for (inti = 1; i <= 100; i++) {

                   if (i % 2 == 0) {

                       System.out.println(i);

                   }

    }

4:计算1-100之间偶数的和

               intsum = 0;

                for (inti = 1; i <= 100; i++) {

                   if (i % 2 == 0) {

                   sum += i;

                   }

 

                }

    System.out.println(sum);

For循环的执行顺序:表达式1→表达式2→语句→表达式3→表达式2酱紫循环

2)这里涉及一个作用域的问题,作用域就是变量的作用范围。比如例4sum需要定在在合适的位置。

                   3while循环的结构

                          表达式1

                          While(表达式2

{     语句;

表达式3

}

                   4do……while循环的结构

                         do{

语句

}while(表达式)

 


 

第四章:数组

1.数组的定义

        从字面上理解,数组是装相同数据类型并且长度固定的连续内存片段。

        特点:1)数组的大小/长度固定不变

                   2)存放相同数据类型的数值

                   3)连续的内存空间

4)为了用数中的数据,在每一个区域都起了一个标记小标、索引---方便使用,下标从0开始,知道数组最大长度减1.

2.数组的书写方式

        1数据类型[] 数组名 = new 数据类型[数组长度]

                        

                 数组数据类型        标识符                             创建新的数组,并且提示长度

        2)如何赋值

           使用数组的某一个框---------a[0] = 1;

 

                                    

 

 

 

 

 

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       3)如何使用?

                 和赋值时一样。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值