java的类的封装的问题

必做题)设计一个有理数类,应该包含加、减、乘、除运算。编写一个测试类,对从键盘输入的有理数进行各种加减乘除四则运算。
提示:
程序结构:本程序应包含两个类文件:Rational.java和RationalTest.java.
Rational类(有理数类)应包含两个成员变量,分别表示有理数的分子和分母。此外,Rational类包含两个构造方法,一个无参构造方法,一个有参的构造方法(带2个参数的构造方法),还有:更改器(设置两个成员变量的两个成员方法)、获取器(返回两个成员变量值的成员方法),实现与另一个有理数进行加减乘除四则运算的成员方法(加、减、乘、除分别对应4个成员方法)。和toString方法(输出有理数的方法)。
Rational类中实现加、减、乘、除的方法,应有一个参数,此参数应该是参与运算有理数,比如加法运算:public Rational add(Rational r),注意:两个有理数相加的结果仍然是有理数,因此方法类型为Rational。(调用此方法时,例如,a.add(b)表示的是Rational类的对象a和另一个Rational类的对象b相加,其他运算以此类推)。
RationalTest类用来测试Rational类,其中只有一个main方法,在main方法中,创建两个有理数对象,分别输出出来,然后输出这两个有理数加、减、乘、除的结果。

1个回答

规则都写成这样有啥不会的自己可以复制哪条粘贴问度娘

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Java类的封装
java中四种不同的限定词限定的成员(成员变量或成员变量方法),访问权限由大到小依次为: public(公共的)   可以被所有的类访问 protected(受保护的)   可以被这个类本身访问   可以被它的子类访问(同一个包以及不同包的子类)访问。   可以被同一个包中所有其他的类访问 默认的、友好的      被这个类的本身访问      被同一个包中的类访
类的封装(java)
package java02; //封装:把对象的属性和行为结合成一个独立的单位,并尽可能隐蔽对象的内部细节,对外形成一道屏障, //只保留有限的对外接口使之与外部发生联系。封装使对象以外的部分不能随意存取对象的内部数据(属性), //从而有效的避免了外部错误对它的“交叉感染”,使软件错误能够局部化,大大减少查错和排错的难度。 import java.text.SimpleDateFormat; ...
java中类的封装
封装: 可以隐藏对象的属性和实现细节,仅对外公开接口,控制对象的属性和方法的 访问级别,提高程序模块化级安全性,便于维护。 实现良好的封装性,通常将类的成员变量声明为private,而不使用public. 然后用get和set方法进行封装。 例如: package zz; public class textStudent { private String name; privat...
Java基本数据类型的类封装
/** * Created by LiuinStein on 2016/5/6. */ import java.lang.*; //基本数据类型的类封装在这个包中 public class Main { public static void main(String[] args) { //针对7种基本数据类型做了类封装 //Byte-byt
java 类的封装
(二)封装1。隐藏实现细节2.提供一个接口给外界访问其中的属性和方法某个对象在运行期间只创建一次,将它的构造方法私有化,然后自己创建自己提供一个公有的静态的方法给外界访问new出来的对象(成员方法必须要用对象访问,所以要将方法定义为静态)具体例子:public class Gouzaosiyou(){public void mian(String args[]){Person p=null; ...
java类对时间的封装
数据库中记录用户注册时间,rn设计时用到dao接口。rn怎么实现数据类型,rnmysql数据类型是什么?怎么转换?rnrnpublic class userrnrnprivate String userName;rnprivate String userPwd;rnprivate ???????? regTime;rnrnrnregTime 在执行insert的时候记录,rnrn
Java:类的封装
定义:将对象的属性和方法相结合,通过方法将对象的属性和实现细节保护起来,实现对象的属性隐藏。 做法:修改属性的可见性来限制对属性的访问,并为每个属性创建一对取值(getter)方法和赋值(setter)方法,用于对这些属性的访问。具体步骤: 修改属性的可见性来限制对属性的访问。 为每个属性创建一对赋值方法和取值方法,用于对这些属性的访问。 在赋值和取值方法中,加入对属性的存取限制。 ...
Java封装AESUtil类
AESUtil Java封装类 AES加密工具类,其中导入的jar包jdk引进去就可以用了,jdk的版本尽量大于1.5
java实验类的封装
java 类的封装,java学习资源。有关java的学习资料,课程课件。java实验课课程课件。
JAVA的修饰符和类的封装
修饰符1.public(公开)2.private(私有)3.无(省略)4.protected(保护)修饰符可以对,类,属性,方法和构造器进行修饰。封装经典的一句话:面向属性更安全,面向用户更简单!封装就是把属性私有化,不给用户访问。然后在本类中创建set(设置)或get(得到)的方法,让用户只能通过这两个方法去对属性进行访问操作。这样可以起到一个验证的作用,验证用户赋的值是否合理。还可以在方法中加...
封装java常用工具的类
封装java常用的类,其中有邮件发送实现带jsp,xml,导出excel,加密,时间类,数据库连接池,验证码,gui,io,SQLserver,StringUtil等等等
Java知识--类的封装
1.类的定义: 类{ 若干个变量(属性); //成员变量 若干个函数(方法); //成员方法 } 2.类名(完整名称): 包名+类名 3.对象的实例:类 对象 = new 构造函数(); 4类的封装性: (1)所有的变量私有化,写一些setter-getter方法供外面操作这些属性, 在这些方法中可以进行业务控制。 (2)写一些构造方法,供外面在创建对象
java封装数组类
学习数据结构,自己实现了一些数组的基本操作,里面可能会有错误,还望指正 对数组的封装操作,类似于线性表中的顺序存储 /** * @author NeoSong * @date Oct 8, 2017 * 5:44:10 PM * program OF information: 1.自定义类MyArray来封装数组类 * 2.定义操作数组类的方法
java封装数据库的类
java连接Sql2003数据库的封装类如何写 啊
类的封装一问题
[code=C#]public static News GetNewsByUserId(int NewsId)[/code]rn[code=C#]public static bool UpdateNews(News SingleNews)[/code]rn[code=C#]public static List GetTopNews(int NewKindId, int intTop)[/code]rn[code=C#]public static bool IsValidateNewsName(string NewsName)[/code]rnrnrn以上这几种模式或类型的定义,我怎么理解呢?主要是作用和好处。具体实现什么功能我也都知道。就是现在我有一层纸没有捅破,请高指点一下,或那有这样的详细资料说一下。。。。以上都是三层结构用的代码。我要了解他透透的
关于类的封装问题
之前做了一个录音放音的小程序,有界面,现在想把它改成一个只在后台运行的,不要界面的程序,我只要留出接口就可以了,因为界面另外一个人做,不知道该怎么做,各位大虾帮帮忙,告诉我个大题流程吧
类 封装的问题
在Data.cs类中有四个方法,保存一条信息时,必须同时调用这四个方法,我怎么才能确定它同时调用了四个方法呢??rn听朋友说封装就可以解决这个问题,那位高手指点一下。。
关于类封装的问题!
我在菜单上加了几个功能键,而且也加入了消息映射,但是我想在我自己做的类中斜相应的响应函数,然后再在系统产生的view类中调用这些函数,我该如何做?rn比如:我生成的程序名为Npad,我的消息映射加到了CNpadView,其中一个函数为rnvoid CNpadView::OnBold()rnrn ....rnrn我不想在其中加入具体代码,我只想在其中调用我在另一个自己定义的类中的函数,如我自己定义的类是:CChatView,所对应的函数是void OnBold .。我想在CNpadView中的OnBold中调用此函数,以更好的实现类封装的精神!rn我该如何做?rn我曾在CNpadView中定义了CChatView的对象m_ChatView,并在OnBold()中加入m_ChatView.OnBold(),编译会通过,但是当点击相应的菜单时会出错!
窗口类封装的问题
我自己封装个窗口类,如果窗口函数WndProc中的第一个参数省略,而从成员函数中取得,编译时会出错,请问我该如何做才能省略呢?rn#include rnrnclass MyWindowrnrnprivate:rn HWND m_hWnd;rnpublic:rn MyWindow();rn BOOL CreateWin(LPCTSTR lpClassName,LPCTSTR lpWindowName,DWORD dwStyle,int x,int y,int nWidth,int nHeight, rn HWND hWndParent,HMENU hMenu,HINSTANCE hInstance,LPVOID lpParam ); rn rn BOOL ShowWindow(int iCmdShow) ;rn BOOL UpdateWindow();rn static LRESULT CALLBACK WndProc (HWND hWnd,UINT message, WPARAM wParam, LPARAM lParam);rn rn;rnrnMyWindow::MyWindow()rnrn m_hWnd=0;rnrnrnBOOL MyWindow::CreateWin(LPCTSTR lpClassName, LPCTSTR lpWindowName,DWORD dwStyle,int x,int y,int nWidth,int nHeight, rn HWND hWndParent, HMENU hMenu,HINSTANCE hInstance, LPVOID lpParam)rnrn m_hWnd = ::CreateWindow (lpClassName,lpWindowName,dwStyle,x,y,nWidth,nHeight,hWndParent,hMenu,hInstance,lpParam); rn if(NULL==m_hWand)rn return FALSE;rn elsern return TRUE;rnrnrnBOOL MyWindow::ShowWindow(int iCmdShow) rnrn return ::ShowWindow(m_hWnd,iCmdShow); rnrnrnBOOL MyWindow::UpdateWindow()rnrn return ::UpdateWindow (m_hWnd);rnrnrnLRESULT MyWindow::WndProc (HWND hWnd,UINT message, WPARAM wParam, LPARAM lParam)rnrn HDC hdc ;rn PAINTSTRUCT ps ;rn RECT rect ;rn rn switch (message)rn rn case WM_LBUTTONDOWN:rn MessageBox (hWnd,"WM_LBUTTONDOWN","Title",MB_OK);rn return 0 ;rn rn case WM_RBUTTONDOWN:rn MessageBox (hWnd,"WM_RBUTTONDOWN","Title",MB_OK);rn return 0 ;rn rn case WM_PAINT:rn hdc = BeginPaint (hWnd, &ps) ;rn rn GetClientRect (hWnd, &rect) ;rn rn DrawText (hdc, TEXT ("Hello, Windows 98!"), -1, &rect,rn DT_SINGLELINE | DT_CENTER | DT_VCENTER) ;rn rn EndPaint (hWnd, &ps) ;rn return 0 ;rn rn case WM_DESTROY:rn PostQuitMessage (0) ;rn return 0 ;rn rn return DefWindowProc (hWnd, message, wParam, lParam) ;rnrnrnint WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,rn PSTR szCmdLine, int iCmdShow)rnrn static TCHAR szAppName[] = TEXT ("HelloWin") ;rn //定义结构rn MSG msg ;rn //定义一个窗口对象rn class MyWindow MyObj;rn //定义窗口结构rn WNDCLASS wndclass;rn wndclass.style = CS_HREDRAW | CS_VREDRAW ;rn wndclass.lpfnWndProc = MyWindow::WndProc;rn wndclass.cbClsExtra = 0 ;rn wndclass.cbWndExtra = 0 ;rn wndclass.hInstance = hInstance ;rn wndclass.hIcon = LoadIcon (NULL, IDI_APPLICATION) ;rn wndclass.hCursor = LoadCursor (NULL, IDC_ARROW) ;rn wndclass.hbrBackground = (HBRUSH) GetStockObject (WHITE_BRUSH) ;rn wndclass.lpszMenuName = NULL;rn wndclass.lpszClassName = szAppName;rnrn if (!RegisterClass (&wndclass))rn rn MessageBox (NULL, TEXT ("This program requires Windows NT!"), rn TEXT ("HelloWin"), MB_ICONERROR) ;rn return 0 ;rn rn MyObj.CreateWin(szAppName,TEXT("The Hello Program"),rn WS_OVERLAPPEDWINDOW, CW_USEDEFAULT,CW_USEDEFAULT,rn CW_USEDEFAULT,CW_USEDEFAULT,NULL,NULL, hInstance,NULL);rn rn MyObj.ShowWindow(SW_SHOWNORMAL); rn MyObj.UpdateWindow();rn rn //GetMessage不接收属于其他线程或应用程序的消息。rn while (GetMessage (&msg, NULL, 0, 0))rn rn TranslateMessage (&msg) ;rn DispatchMessage (&msg) ;rn rn return msg.wParam ;rn
类封装问题
<%rndim haha as Class1 = new Class1rn'haha.write()rnrn%>rn rnrn报错:rn编译错误 rn说明: 在编译向该请求提供服务所需资源的过程中出现错误。请检查下列特定错误详细信息并适当地修改源代码。 rnrn编译器错误信息: BC30469: 对非共享成员的引用要求对象引用。rnrn源错误:rnrn rnrn行 29: rn行 30: Sub write() rn行 31: Response.Write("hello word") rn行 32: End Sub rn行 33: rn rnrn为什么呀?怎么处理?
有关类的封装的问题
我定义两个整数的链表,用结构实现.然后相加放如一个新的链表 rn请问我想用类实现封装,不用结构,怎么作!在主函数定义类的对象 rn的时候,他自然调用构造函数,而构造函数又不能带返回值,如何 rn得到生成的链表的首地址呢?谢谢!!!! rn如:struct nodernrn float coef;rn int expt;rn struct node *next;rn;rnstruct tou rnrn int j;rn struct node *pnext;rn;rnstruct tou *create()rnstruct tou* add(struct tou*la,struct tou*lb)rn用create函数创建两个链表,用add函数实现两个链表的求和rn想把这个用结构编的程序改为用类编的程序,实现封装,请问如何作呢?rnrnrnrn
关于类封装的问题
我有一个自定义类Tmydm从Tdatamodule派生,我想把他做为我程序中数据层的基类,其他如用户、部门、帐套等都从他派生出来,现在遇到个问题,子类中要连接数据库,需要有私有数据成员如:userconn:Tadoconnectionrn如果这样的话,每创建一个实例都会有一个连接,我觉的这样并不好,如果实例很多的话数据库肯定吃不消,但如果将userconn放在别的地方又破坏了封装,请高手指点rn
简单的类封装问题
rn封装TMyPanel类:rn[code=Delphi(Pascal)]typern TMyPanel = Class(TPanel)rn MyLabel: TLabel;rn MyComBoBox: TComboBox;rn MyBitBtn: TBitBtn;rn publicrn constructor Create(AOwner: TComponent); override;rn destructor Destroy; override;rnend;rnrnrnrnimplementationrnrn TMyPanel rnrnconstructor TMyPanel.Create(AOwner: TComponent);rnbeginrn inherited Create(AOwner);rn Width:= 500;rn Height:= 200;rn Left:= 50;rn top:= 50;rn MyLabel:= TLabel.Create(Self);rn MyLabel.Left:= 10;rn MyLabel.Top:= 10;rn MyLabel.Caption:= 'MyLabel';rn MyLabel.Parent:= Self;rn MyComBoBox:= TComBoBox.Create(Self);rn MyComBoBox.Left:= 100;rn MyComBoBox.Top:= 10;rn MyComBoBox.Parent:= Self;rn MyBitBtn:= TBitBtn.Create(Self);rn MyBitBtn.Left:= 160;rn MyBitBtn.Top:= 60;rn MyBitBtn.caption:='bitbtn1';rn MyBitBtn.Parent:= Self;rnend;rnrndestructor TMyPanel.Destroy;rnbeginrn MyLabel.Free;rn MyComBoBox.Free;rn MyBitBtn.Free;rn inherited Destroy;rnend;rn[/code]rn-------------------------------------------------------------rn在form1中调用MyPanelrnprocedure TForm1.FormCreate(Sender: TObject);rnbeginrn MyPanel:= TMyPanel.Create(self);rn MyPanel.Parent:= Self;rnend;rn如果要省略 MyPanel.Parent:= Self;那么这个类怎么改造?要能正常显示在form1中
vb类封装的问题
对于mis,erp等系统如何进行类的定义更适合业务定义!rn可以在数据控制方面,多些论述么?最好有例子!rnrnerpcn@8848.netrnrnwww.erpcn.net
有关JAVA类的封装等级的
我们的书中有一条对类的描述:rn rn [封装] [修饰符] class 类名称 [extends 父类] [implements 接口类]rnrn我的疑惑是在那个“封装”上。类的封装等级除了 public 之外还有什么呢?rn如果把类的封闭等级不写出(如:class Me)那么这又表示什么呢?rnrn(顺便借地儿鄙视下我们的教材)rn对于这条类的描述中,我们的教材就给了一个例子,啥也没说,老师也没讲。这教材完全就像是一个没有经过编程实践的空谈者所编,所有的东西全部用个例子一笔代过,只留给我们无限“遐想”,而且好多有用的东西也列出来,根本就对不住我们这样的“专业人士”。。。。。鄙视之
java金额类计算封装
import java.math.BigDecimal; import java.math.BigInteger; /**  *   * @Description:TODO  * @author:     ZhangHaiXiang  * @date:       2014年7月20日  */ public class Money { public static fi
java类的访问权限控制和封装
类存在一个边界,边界之内的细节隐藏起来,只留下对外的接口(如:笔记本、手机、饮水机) 为什么使用封装:(1)易用,简单(2)提高数据安全性(3)实现对属性的访问权限控制,增加程序的易维护性。   面向对象封装的体现: 四种权限的访问修饰符对实体的修饰   private 默认 protected ...
Java 面向对象 01 类&封装
1 面向对象、面向过程是什么? 面向过程:“我该怎么做” 面向对象:“我该让谁来做” 1)举例:买电脑(组装机) 面向过程:自己查询硬件参数和报价–&amp;gt;电脑城询价–&amp;gt;现场安装和监督–&amp;gt;带电脑回家。 面向对象:找到懂电脑硬件会装机的人,让他装机–&amp;gt;带电脑回家。 2)总结: 面向过程:体现的是执行者(自己做事情)。 面向对象:体现的是指挥者(指挥别人做事情)。...
JAVA 十二 类,对象,封装
JAVA 十二 类,对象,封装 标签: JAVA 1. 本章目标 掌握类和对象的特征 理解封装 会创建和使用对象 1. 对象:具体的某个事物,万物皆对象 对象的属性:对象具有的各种特征 对象的方法:对象执行的操作 描述对象的两个方面:即是对象的属性和方法; 封装:对象的属性和方法放到一起 2. 类是具有相同属性和方法的一组对象的集合(引用数据类型) 引用数据...
【java】类封装和使用hashmap
之前上课老师用hashmap, hashtable来存储数据。rn我一般都是用类封装。经常用到的就是user类,封装姓名,年龄,性别这类信息。rn请问hashmap和类封装有什么区别?不明白为什么要用map这些。rn![图片说明](https://img-ask.csdn.net/upload/201811/23/1542986942_720698.png)
JAVA 自己封装的 CommenUtils类
自己封装的Utils类,来自google.gava / commen.lang3等 import java.lang.reflect.Array; import java.util.ArrayList; import java.util.Collection; import java.util.List; import java.util.Map; import org.apache.com...
Java面向对象--类、对象、封装
面向对象概念:面向对象是相对面向过程而言,面向对象和面向过程都是一种思想。面向过程强调的是功能行为,例如把大象装进冰箱        1、打开冰箱。        2、存储大象。        3、关上冰箱。打开、存储、关上都是功能行为,在代码中的直观体现就是函数或者方法,这就是一种面向过程的以功能行为为主体的思想体现面向对象将功能封装进对象,强调具备了功能的对象,还是大象装进冰箱的例子
Java 封装全局异常类
今天学习Java第五天,写demo的时候捕获异常,很不习惯,毕竟PHP可以很方便直观的处理,查查资料,自己写了一个,刚开始学,写的有点LOW 1.全局异常处理类 import javax.servlet.http.HttpServletRequest; import org.springframework.beans.factory.annotation.Autowired; import ...
Java面向对象笔记 —— 类的封装
利用类的封装对成员变量的访问做一些限定,不允许外界随意访问。 将类中属性私有化,然后定义公有的访问方法获取属性和设置属性。 public class Student { private String name; //name方法私有化 private int age; //age方法私有化 //公有的getName()和setName()名字方法 public Strin...
【Java笔记】有理数的类封装
分数是有理数(Rational),我们经常做分数的四则运算得到的是小数,如果我们运行分数的四则运算想要得到分数,要怎样做呢? 用类实现对有理数的封装可以做到。 有理数有两个重要的成员,即分子(numerator)和分母(denominator),另外还有重要的四则运算。 Rational类应该具有以下属性(成员变量)和功能(方法): 1.成员变量:int型变量numerator(分...
java封装redis基础操作类
package com.example.redisdemo.utils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core....
Java之类与对象(学生类封装)
/*定义一个学生类,属性:姓名,年龄,性别,住址,班级, 1.方法:入学方法(参数为年龄):判断学生的年龄是否大于18岁,如果大于18岁则可以入学,并打印该学生的所有信息。 2.方法:查找方法(参数为姓名,学生数组),如果有该同学的姓名则显示查找成功,否则查找失败。 3.方法:修改方法(原姓名,学生数组)如果有该同学的姓名,则键盘输入要修改的项(比如要修改年龄,则输入年龄),最后显示修改后的该学生...
NDK学习笔记:java类封装c++类
本文介绍了jni开发的中java类如何直接对c++类进行封装和调用,并附源码。另外修改了原文中的一些错误。
Java类和封装学习心得(1)
Java中有类,方法和对象的定义。类是对现实中具体事物的描述,类中应该有描述该事物属性的对象,也有描述该事物运行方式的方法。这些一起组成了一个类,类通过封装变得完整且安全,外部的方法想要修改类中的内容,只能通过事先在类中定义好的接口来进行。与C类比,类就像一个特殊的结构体,其中的内容对外部是隐藏的。各个类通过互动来完成一个完整的程序。这种面向对象的编程思想更加符合人的逻辑。     写一些总结:
java程序设计---封装与类(1)
封装是面向对象语言一个非常重要的思想,它借助类来完成。 封装与类包括以下内容: 一.类      1.成员变量与局部变量      2.成员修饰符 二.方法重载 三.对象     1.构造方法     2.创建对象     3.使用对象     4.对象参数传值     5.垃圾回收机制 四.实例变量和类变量 五.类的发现与设计     1.分类     2.抽象
相关热词 c# 标准差 计算 c#siki第五季 c#入门推荐书 c# 解码海康数据流 c# xml的遍历循环 c# 取 查看源码没有的 c#解决高并发 委托 c#日期转化为字符串 c# 显示问号 c# 字典对象池