Java学习笔记——类和对象

本文介绍了Java中的类和对象概念,包括它们的定义、静态和动态特性,以及Java中的访问修饰符。重点讲解了构造方法的使用,如Circle类的实例化,以及this关键字的作用。同时讨论了静态变量和静态方法在程序中的应用和注意事项。
摘要由CSDN通过智能技术生成

一.类和对象的定义

对象: 随处可见的一个事物就可成为对象。对象是物体存在的实体。所以对象会被划分为两个部分,即静态部分和动态部分,其中前者都是具有属性的,例如人的高矮、胖瘦、性别、年龄等;后者则是对象可执行的动作,成为“行为”,例如一个人可以哭泣、微笑、说话、行走等等。

:即为同一类事物的统称。例如鸟类就是一个类,其中包括大雁,鸡鸭,天鹅等等,将这些集中在一起构成的鸟类即为一个类。类是封装对象的属性和行为的载体,也就是说鸟类均具有的基本特征都是在类中都有的,当然每一个对象都有自己不同的特征,也可以重写类中定义的属性,从而进行调用。

二.程序实现

在使用之前,要提到的是Java语言中的三个修饰符:

1.private

本类中可见,同包类的其他类或者是子类不可见,其他包的类或子类也不可见。

2.protected

本类中可见,同包类的其他类或者是子类可见,其他包的类或子类不可见

3.public

本类中可见,同包类的其他类或者是子类可见,其他包的类或子类也可见

之后,首先来看一下常见的类的定义,这里以圆为例:

class Circle{

   double radius = 1;

   Circle(){

   }

   Circle(double newRadius)

   {

       radius = newRadius;

   }

   double getArea()

   {

      return radius *  radius * Math.PI;

   }

   double getPerimeter()

   {

         return 2 * radius * Math.PI;

    }

    void setRadius(double newRadius){

         radius = newRadius;

     }

}

运用:

上述代码中用到了两个构造方法,一个是Circle(),另一个是Circle(newRadius)。两者用于对象的创建。最大的特点就是与类名同名。另外主方法main中用到了new关键字来创建对象,从而实现对对象的各种操作。

这里还要注意的是一个关键字:this。此关键字用于表示本类当前的对象,而不是某个new

出来的对象,是当前正在编辑的类。

这里另举一个例子,于“鸡蛋灌饼”有关:

使用this在一定程度上可以简化一下类的构造。另外我将定义两个类合并为一个用到this关键词也可以减少出错。不过对于初学者来说,大多数情况下是不会像上述这样写的。

在说接下来的内容之前,先说明一下静态变量和静态方法,它的作用通常是为了提供共享数据或方法,如数学计算公式等。

例如统计顾客的总人数:

版本一:

版本二:

使用static关键字的注意点:

1.静态方法中不能用this关键字。

2.在静态方法中不可以直接调用非静态方法。

3.局部变量不可以使用static关键字进行声明。

4.主方法(main方法)必须用static关键字进行声明。

5.只有内部类可以使用static关键字进行声明。

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
文件上传是Web开发中常见的功能之一,Java中也提供了多种方式来实现文件上传。其中,一种常用的方式是通过Apache的commons-fileupload组件来实现文件上传。 以下是实现文件上传的步骤: 1.在pom.xml文件中添加以下依赖: ```xml <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.3.3</version> </dependency> ``` 2.在前端页面中添加文件上传表单: ```html <form method="post" enctype="multipart/form-data" action="upload"> <input type="file" name="file"> <input type="submit" value="Upload"> </form> ``` 3.在后台Java代码中处理上传文件: ```java // 创建一个DiskFileItemFactory对象,用于解析上传的文件 DiskFileItemFactory factory = new DiskFileItemFactory(); // 设置缓冲区大小,如果上传的文件大于缓冲区大小,则先将文件保存到临时文件中,再进行处理 factory.setSizeThreshold(1024 * 1024); // 创建一个ServletFileUpload对象,用于解析上传的文件 ServletFileUpload upload = new ServletFileUpload(factory); // 设置上传文件的大小限制,这里设置为10MB upload.setFileSizeMax(10 * 1024 * 1024); // 解析上传的文件,得到一个FileItem的List集合 List<FileItem> items = upload.parseRequest(request); // 遍历FileItem的List集合,处理上传的文件 for (FileItem item : items) { // 判断当前FileItem是否为上传的文件 if (!item.isFormField()) { // 获取上传文件的文件名 String fileName = item.getName(); // 创建一个File对象,用于保存上传的文件 File file = new File("D:/uploads/" + fileName); // 将上传的文件保存到指定的目录中 item.write(file); } } ``` 以上代码中,首先创建了一个DiskFileItemFactory对象,用于解析上传的文件。然后设置了缓冲区大小和上传文件的大小限制。接着创建一个ServletFileUpload对象,用于解析上传的文件。最后遍历FileItem的List集合,判断当前FileItem是否为上传的文件,如果是,则获取文件名,创建一个File对象,将上传的文件保存到指定的目录中。 4.文件上传完成后,可以给用户一个提示信息,例如: ```java response.getWriter().write("File uploaded successfully!"); ``` 以上就是使用Apache的commons-fileupload组件实现文件上传的步骤。需要注意的是,文件上传可能会带来安全隐患,因此在处理上传的文件时,需要进行严格的校验和过滤。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值