黑马程序员__Java入门知识,变量,数据类型……

来源:互联网 发布:影视行业 知乎 编辑:程序博客网 时间:2024/06/05 08:00




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


1. 常量
    Java中固定不变的
整数:12348456666
小数:1.1 2.4
字符:'' 汉字,一个字符  ' ' ,必须写,只能一个
字符串:双引号的,字符串常量"随便的写"
布尔:true,false 成功就是真,失败就是假
null常量  ,一切引用数据类型的公共值
    p = null;
  
  
  2. 变量
    变量有什么作用:变化的内容,存储常量值,方便我们计算
定义变量的三个要素:
  格式: 数据类型 变量名 = 值;
  变量名,必须满足,标识符的要求,尽量有意义
注意,作用范围,大括号

  3. 数据类型
     Java中只有两种数据类型
 基本类型
    数值型:byte--8 short-16 int-32 long-64 
浮点型: float double  0.0
字符型: char-16  存储一个字符,取值范围是:0-65535,char类型,无符号数据类型
布尔型:boolean  true false
 引用类型:
     数组  null
 类    null
 接口  null
 
  4. 运算符
       ++ 对变量,进行自增1的运算,符号在前,在后
      int i = 10;
  int j = 1 ;
  j = ++i;  先自己增长1,在赋值到j上去
  j = (i++);  先赋值到j,自己在增长,
  无论如何i自己都会+1 的,影响到和它运算的变量
  避免,写括号
  --
  >> << >>>
  针对于二进制操作的,一个整数,在内存中,是二进制表示
  进行位移,移动的是二进制位
  
  instanceof  boolean类型
  
  5. 语句环节
     判断 if else
  写法格式
     if(条件){}

if(条件){}else{}执行执行一个
 if(条件){}else if(条件){} else if(条件){}else{}只要有一个if条件是真,后面的程序不执行了
 
选择 switch -- 很鸡肋
  格式:
  switch中可以接受什么数据类型:byte short int char --JDK1.4
  switch中可以接受什么数据类型:byte short int char 枚举 --JDK1.5
  switch中可以接受什么数据类型:byte short int char 枚举 String --JDK1.7
    swtich(表达式){
    case 常量1:
  执行的代码;
 break;
case 常量2:
  执行的代码;
  break;
 default:
   执行的代码;
 break;
}
 
循环 for while   Xdo while,目前禁用
注意:for不看变量,不看增量,只看条件
当for和while可以互换的时候,推荐是用for,省内存

for(初始化变量;条件;增量){
   for(){
 
}
}
 
while(条件){ 
   while(条件){

}
}
 
嵌套循环,主要的是,程序的运行次序
 
两个关键字 break,continue只能在循环中
 
 
 6. 函数 function
   什么是函数:完成某一个功能的独立代码块 
   不调用,不执行
   main方法   JVM调用
   定义函数的格式:
      修饰符 返回值类型 函数名(参数列表){
     函数的执行代码
 变量,语句,调用其他函数
 return ;
 }
   
     修饰符:public static private  
返回值类型:数据类型,返回基本类型,返回引用类型
返回值类型,就是一个函数,运行后结果的数据类型
如果函数运行后,没有结果,返回值类型写void
看要求
   
     参数列表:写法,数据类型 变量名... 
     参数,就是函数运行的时候,不确定的未知数
     圆形面积,半径平方×圆周率  
   
     函数,写不写静态有区别
 
重载:函数的多态性的体现:同一个类,函数的名字一致,参数列表不同
参数列表:个数,类型,顺序,不要看其他修饰符,返回值
 
重载:应用println(整数,小数,字符串),方便使用而已
功能就是一个打印,打印的数据类型不确定,写成了重载形式
利用重载实现99乘法表
   
   7.数组
     可以将统一数据类型的数据,存储到一个容器中
容器就是数组,定长,数组中存储数据的个数,创建完毕了,定死
数组定义的格式:
      int[] arr = {1,2,3};简单,直观
  int[] arr = new int[3];//创建一个只能存储3个数组
  int[] arr = new int[]{1,2,3,4};
  
数组中出现的异常:
       索引越界异常 ArrayIndexOutOfBonusException arr[5]
空指针异常  NullPointerException  int[] arr = null;  arr[0]

数组的操作,遍历,获取大值
遍历:从数组中,将每一个数据获取出来
for(int x = 0 ; x < arr.length; x++){
     System.out.println(arr[x]);
 }
int[] arr ;
int arr[];

int[] x,y[];
   
   
   8. OOP面向对象
      Object Oriented  Programming
 当你需要完成一个功能的时候,找有没有实现这个功能的对象
 如果有,创建对象,并指挥对象做事情
      如果没有,自己造对象,创建对象
 
 类(class)
  描述对象的,抽象(说不清楚)描述
  类,描述的时候,说不清楚的  String name;
  类,描述车的时候,有牌子,座位
  
      对象
   对象就是现实中确实存在的具体的事务
人:自己的姓名和年龄 new
车:牌子,允许多少人 new

实现功能的时候,先要分析事物
class Person{
    String name;非静态成员变量
int age;
非静态成员方法
public void eat(){
   sop(name + age);
}
}
main方法(){
   //创建一个人类对象
类,数据类型,类类型
p 类类型变量(引用类型)
new Person()对象
一个引用数据类型,一定指向一个对象
Person p = new Person();
p.name = "张三";
p.age = 15;
p.eat();
}
内存的问题:
  对象在堆中存储,对象中包含自己的非静态成员变量
  Person p 栈内存存储,属于main方法的局部变量
  p存储的是什么,对象在内存中的地址值
  
  栈:
    运行方法,局部变量
用完就直接释放
局部变量,必须手动赋值
    生存周期,相对较短
 
  堆:
    存储的是对象,成员变量
变量,都有默认值
用完后,不会立刻释放,等待JVM启动垃圾回收器
生存周期,相对较长
   
   
   9. 封装:
      private修饰符,只是封装的一种体现形式
 不完全代表封装!
 凡是因此起来,不告诉你的
 隐藏实现细节,对外提供公共的访问方式
 
 private可以修饰,成员变量,成员方法,成员修饰符
 一般情况下,在写代码的时候,类中的成员变量private修饰
 提供get set方法
 被私有后的成员,只能在本类访问,外面的类,访问不了
 
 好处:
   提高安全性,隔离变化,隐私,提供重复使用率
   
  10. 构造方法
     构造方法的写法很重要
固定的写法
    方法名字必须和类名一致,大小写
不能写返回值类型  void 编译的时候,认为普通的方法,不是构造!
不要写return!!!
构造方法,能写静态吗,NO!
构造方法,能写权限吗. YES
构造方法,能重载吗,必须可以
class Person{
    String name;
int age;
    Person(){}
    Person(int x){}
    Person(int x,String y){}
}
      如何使用构造方法,创建对象的时候,new 的这个时候,构造方法就运行了
 可以在创建对象的过程中,给类中的成员变量,进行赋值
 凡是方法,成员变量,运行,必须被调用
 对象调用
 如果你有成员变量,需要赋值,写构造方法
 但是空参数构造方法,一般要写!
   
   12. this关键字
     表示本类对象的引用
但是this是固定值,不能改
哪个对象调用的方法,或者成员变量,this就表示哪一个对象
 
this 可以用于区分局部变量,和成员变量重名的情况
class Person{
   String name;
public void show(){
  String name = "zhangsan";
  sop(this.name);
}
public void show2(){
    this.show();
}
}
this 可以在构造方法之间调用

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

0 0
原创粉丝点击