java中的类[通俗易懂]

java中的类[通俗易懂]4.1.类是什么?  1.类–类型–数据类型—复合数据类型—自定义复合数据类型  为什么有复合数据类型?  基本数据类型就8种,在开发中远远不够,所以我们就需要一个可以根据自己的需求随时能制作出一个自己需要的数据类型。  2.类–具有共同性质的一组事物的群体。人类。  在java中用来描述具有共同性质的一组事物的自定义的复合数据类型—类。  复合数据类型的本质—【根据自己的

大家好,又见面了,我是你们的朋友全栈君。

4.1.类是什么?
  1.类–类型–数据类型—复合数据类型—自定义复合数据类型
  为什么有复合数据类型?
  基本数据类型就8种,在开发中远远不够,所以我们就需要一个可以根据自己的需求随时能制作出一个自己需要的数据类型。
  2.类–具有共同性质的一组事物的群体。 人类。
  在java中用来描述具有共同性质的一组事物的自定义的复合数据类型—类。
  复合数据类型的本质—【根据自己的需求制作自己需要的数据类型的模式/规则/公式】
4.2.如何编写一个Java类?
通过class关键字来创建一个类
{}—-类体
例如:

public  class   Xue{ 
   
//public---访问限制修饰符【对类的访问权限】
//class---创建类 的关键字【类的标志】
//Hello--类名【首字母大写】
}

格式:
访问限制修饰符 class 类名{}
例如:

public class Student{ 
     }   
class  User{ 
     }  

4.3.Java类中可以编写什么?
描述一组事物的共同性质
杯子–名字 形状 大小 颜色 装东西
名字,形状,大小,颜色—–基本属性
装东西—基本功能
通过事物的基本属性和基本功能来描述具有共同性质的一组事物。
基本属性——变量
基本功能—–方法

变量–是用来在类中描述事物的基本属性
方法–是用来在类中描述事物的基本功能

4.4.Java类中变量的分类及其基本特征?
变量—保存数据
  1.数据类型【不一定就是之前的基本数据类型,也有可能是自定义的复合数据类型】
  2.变量名称【合法标识符–全字母小写】
  3.初始值
  4.作用域

按照在类中编写变量的位置划分:
1.成员变量【全局变量】—类中方法外
  (1).可以使用访问限制修饰符,也可以不使用。
  (2).可以不用赋予初始值,系统自动赋予默认值,也可以根据需要自己设置一个初始值。
  (3).可以在本类中的任意一个方法中被使用
2.局部变量———————–方法里/方法参数
  (1).不能使用访问限制修饰符。
  (2).必须设置初始值
  (3).只能在本方法中使用。
例如:

public class Student{ 
   
         public int stu1;//可以使用访问限制修饰符
         Int  stu2;//也可以不使;用限制修饰符[缺省的访问限制修饰符]
         public String stuname1;//可以不用赋予初始值,系统自动赋予默认值
         public String stuname2="liuming";//也可以根据需要自己设置一个初始值。
         //成员变量【全局变量】---可以在本类中的任意一个方法中被使用
         public void testM1(){ 
   
                  System.out.println("stu1=="+stu1);
                  System.out.println("stuname2=="+stuname2);
            }
         public void testM2(){ 
   
                   System.out.println("stu1=="+stu1);
                   System.out.println("stuname2=="+stuname2);
            }
         public void testM_n(){ 
   
                    System.out.println("stu1=="+stu1);
                    System.out.println("stuname2=="+stuname2);
             } 
        } 
         public class Shu3{ 
   
         public static  void main(String args[]){ 
   
         Student stu1=new Student();
         stu1.testM1();
         stu1.testM2();                                      
             }
         }                

输出的结果为:
java中的类[通俗易懂]

例如:

class Xue{ 
   
        //方法1--testM1
        public void testM1(){ 
   
       //public char sex;//不能使用访问限制修饰符。
       //char sex;//必须设置初始值
       char sex='男';//局部变量
       //只能在本方法中使用
        System.out.println("sex=="+sex);
              }
       //方法2-textM2
        public void  textM2(){ 
   
       //只能在本方法中使用,超出本方法就不能使用
         // System.out.println("sex=="+sex);
         }
      }
          public class XueXi{ 
   
          public  static   void main(String args[]){ 
   
          Xue stu =new Xue();
          stu.testM1();
                        
      }
}

运行结果:
java中的类[通俗易懂]

4.5.什么是成员变量的隐藏?
在同一个类中成员变量与某一个方法中的局部变量的名称相同,这是我们在方法中使用这个成员变量的时候,得到的结果是局部变量的值,此时就是方法中的局部变量将类中成员变量的值隐藏了,这就是成员变量的隐藏。

public class User{ 
   
       //成员变量
        public String username="liming";
        public  void  testM1(){ 
   
        //局部变量
        char  username='C';
        //成员变量的隐藏
        //成员变量的隐藏与变量数据类型无关,只与变量名称有关。
        System.out.println("username=="+username);//username=C
        //如果我们需要强制使用被隐藏的成员变量,该怎么办?
        //通过this访问被隐藏的成员变量
        System.out.println("username=="+this.username);//username=liming
              }
  }

4.6.静态成员变量与实例变量的区别?
静态成员变量与实例变量—-都是成员变量【全局变量】
成员变量【全局变量】—类中方法外
  (1).可以使用访问限制修饰符,也可以不使用。
  (2).可以不用赋予初始值,系统自动赋予默认值,也可以根据需要自己设置一个初始值。
  (3).可以在本类中的任意一个方法中被使用
  成员变量【全局变量】可以分为2种
  按照成员变量【全局变量】是否使用static关键字
  静态成员变量【类变量】—使用static关键字修饰的成员变量【全局变量】
  实例变量—没有使用static关键字修饰的成员变量【全局变量】
  static关键字—静态的—》提前分配存储数据的内存空间
  没有使用static关键字修饰的元素,是在程序运行时分配存储数据的内存空间。
  使用static关键字修饰的元素,是在程序运行前分配存储数据的内存空间。
例如:

public class Xx{ 
   
      public   int  Xxid=1001;
      public  static  String   classname="学习班";//静态成员变量【类变量】
      static  String  classcode="20202020";//静态成员变量【类变量】
}

java中的类[通俗易懂]
java中的类[通俗易懂]

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/156298.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • SSR服务器端渲染(Next.js总结和豆瓣电影项目)「建议收藏」

    SSR服务器端渲染(Next.js总结和豆瓣电影项目)「建议收藏」一.前言先解释一下Nuxt.js和Next.js虽然只有一个字母之差,但它们是不同的两个服务端渲染框架.什么是Next.js?引用Next中文官网的一句话:Next.js是一个轻量级的React服务端渲染应用框架。Next.js带来了很多好的特性:默认服务端渲染模式,以文件系统为基础的客户端路由(注意:没有专门路由)代码自动分割使页面加载更快以webpack的热替换(HMR…

    2025年6月12日
    4
  • Java html转word_html文件转换成excel

    Java html转word_html文件转换成excel使用aspose的原因:1.使用简单,功能强大2.可以自动将html中可以访问的img标签存入word文档中3.可以轻松实现HTML中的样式转换到word文档中首先使用的jar包是:aspose-words-14.9.0-jdk16.jar这个可以在网上找到激活成功教程版以下是代码:1:读取asposelicensepublicstaticbooleangetAsposeWordLice

    2022年10月10日
    6
  • 堆排序算法(图解详细流程)

    堆排序算法(图解详细流程)堆排序的时间复杂度O(N*logN),额外空间复杂度O(1),是一个不稳定性的排序目录一准备知识1.1大根堆和小根堆二堆排序基本步骤2.1构造堆2.2固定最大值再构造堆三总结四代码一准备知识堆的结构可以分为大根堆和小根堆,是一个完全二叉树,而堆排序是根据堆的这种数据结构设计的一种排序,下面先来看看什么是大根堆和小根堆1.1大根…

    2022年7月12日
    18
  • RequestBody Ajax写法「建议收藏」

    RequestBody Ajax写法「建议收藏」$.ajax({url:’,//传输地址type:”post”,//方式data:JSON.stringify({“newpassword”:$(“#paww”).val()}),//newpassword为AppCodeApiParam里一参数名…

    2022年9月26日
    6
  • python中变量命名

    python中变量命名

    2022年1月28日
    50
  • 红帽子虚拟机安装教程_红帽子联网后怎么安装gcc

    红帽子虚拟机安装教程_红帽子联网后怎么安装gcc在WindowsXP中安装虚拟机VMware的方法跟普通软件基本一致,需要填入注册密钥.安装完成以后就可以安装红帽子企业版5操作系统了,首先需要新建一台虚拟的计算机,为其分配内存,硬盘空间,CPU等信息,然后选择启动的位置,是硬盘中的ISO文件还是光驱中的启动,然后就可以启动虚拟机进行安装了.在安装红帽子企业版时选择定制安装,作为初学者可以选择把所有的东西都安装上,这…

    2025年11月15日
    8

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号