javasetget方法
1. java的get和set方法
set設置對象屬性值,get從對象屬性中獲取值get自然是取值
set
自然是設置值
這個是
java的
面向對象編程的一個特點直接GETSET用唄JAVA中有一個概念叫做封裝,封裝就是將對象一些自身的屬性封裝起來,隱藏起來,不讓外界任意訪問,如果你要讓外界訪問這個屬性你就要提供get和set方法。比如你叫張三,你的名字只有你一個人知道(私有屬性),別人問你叫什麼,你說出你的名字就調用了你的get方法,反之如果給你取名字調用的就是你的set方法,get和set方法不是一定要必須兩者都有,你可以根據實際情況而定。get方法是用來得到對象里屬性的值,set方法相反,是用來給對象的屬性設值的。get方法一般是得到成員變數的值,set是設置一個成員變數的值
2. 在java中,set和get方法什麼時候用
get()和set()有一個好枝激處,當輸入.get(.set)時就能顯示所有的屬性。把所有設置都歸納起來,對於外部的使用都方便而已。
1、靈活性
比如我們有一個Person類,我肆空們給它設置一個屬性name,但是我們希望在取名字的時候,不是只顯示名字,而是把名字按我們的要求輸出,比如」我的名字叫XX」,代碼如下:
publicclassPerson{
privateStringname;
publicStringgetName(){
return"我的名字叫"+name;
}
publicvoidsetName(Stringname){
this.name=name;
}
}
如上代碼,以後我們只要定義一個person對象,並給他setName(xx),再getName的時候,就會顯示我的名字叫XX。
2、安全性。
比如我們的操作系統在新建用戶或在共享文件的猛雹襪時候,經常會提示對針對某個用戶的許可權是什麼,是只讀還是只寫還是可讀寫,這里的讀寫就好比get/set。
對於類來說,如果不使用set/get方法,直接用public定義某個屬性,那麼這個屬性是可讀可寫的,如果你希望一個類的某個屬性是只能讀取,不能寫入的時候,上面用public定義某個屬性就不能滿足了,但是我們可以使用private定義屬性,再定義一個get方法,但是不定義set方法來實現。反之,只定義set,不定義get則表示該屬性是只寫不能讀的。如下列代碼:
publicclassCircle{
privatedoubleradius;
privatedoublepai=3.14;
publicdoublegetPai(){
returnpai;
}
publicvoidsetRadius(doubleradius){
this.radius=radius;
}
/**
*計算周長
*/
publicdoublegetC(){
return2*pai*radius;
}
}
我們定義了一個圓類,定義了屬性半徑和pai,半徑我只提供寫的方法,但是不提供讀,而pai只提供讀,但不能寫,並提供了一個計算周長的方法getC。在實際項目中,對一些類的設計時,嚴謹的設計是要考慮哪些類是只讀或是只寫的。
3. java get和set方法
java get和set方法是什麼呢?一起來了解下吧:
set和get這兩個詞的表面意思,set是指設置的意思,而get是獲取的意思,顧名思義,這兩個方法是對數據進行設置和獲取用的,一般來說set和get方法都是對私有域變數進行操作的,因為私有域的變數其他緩告類不能訪問,所以需要藉助get和set方法用於訪問私有域變數。
import java.util.Arrays; public class More { 擾鎮明public static void main(String[] args) { /* int[] arr = {24,56,3,18,5}; System.out.println(Arrays.toString(arr)); //將arr數組轉換為字元串,並輸出 */ Student zs = new Student(); zs.setName("zhangsan"); zs.setAge(25); System.out.println(zs.getName()); System.out.println(zs.getAge()); } } class Student{ //get/set結構 private String name; private int age; public String getName() { return name; } public void setName(String 旅州name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } }
4. 在java中如何使用set/get方法
別說的那麼專業化了,理解都要半天。
就這么理解吧,面向對象中,想對類的成員變數設置訪問一些許可權,於是,就將該欄位設置為private的,這樣別的類就不能訪問了,然後在該內定義兩個方法,一個專門用於獲取,一個用於修改,這樣,在你不想讓別人亂動該欄位的時候,就在該方法內寫一些限制條件。
而為了規范起見(團隊開發需要嘛),就根據人家老外的習慣,將方法名設置為set+欄位名,get+欄位名(名字亂改沒問題),既然規范了,那就是別人都叫這名了,於是,有些框架給對象賦值就有方法了,方法名稱由get或set開始的又有private變數名的,就找出來調用。hibernate1框架就這樣弄得,至於後面的版本是不是這樣就不大清楚了。
JavaBean就是一個JAVA類,既然是JAVA類就不需要什麼組件了,這玩意直接深入到虛擬機了的
5. 在JAVA中何時用get和set方法
set()和get()在api中是沒有的,因為任何一個類都可以有set和get方法,你也可以在你自己的類中寫set和get方法。對一個變數用set方法就是為這個變數賦值,get方法就是取這個變數的值。
public class test(){
String str;
public void set(String string){
this.str = string;
}
public String get(){
return this.str;
}
}
這就是set和get的最基本用法,例如一個標準的java bean就是所有變數和這些變數的set和get方法組成的。
6. Java中的get和set方法究竟是什麼意思
get成員方法和set成員方法分別用於讀取和設置私有變數的值
一般建議將有特殊限制的成員域的訪問控制方式設置為私有模式。這時,可以添加兩個成員方法分別讀取和設置這個具有特殊限制的成員域的值。在這兩個成員方法中,由於讀取該成員域的值的成員方法的名稱通常含有字元序列「get」,因此該成員方法通常簡稱為「get」成員方法;而設置該成員域的值的成員方法的名稱通常含有字元序列「set」,因此該成員方法通常簡稱為「set」成員方法。
這樣可以加強程序的封裝性和安全性,外部程序不能直接訪問私有變數,只能通過get成員方法和set成員方法讀取和設置私有變數的值。
7. java中「get」和「set」方法怎麼寫
java bean就是把自己的數據成員封裝起來, 讓外界不能直接操作數據成員; 而只能通過bean提供的get 和 set方法進行操作,保證了數據安全性。可以理解為:get就是把對象中的值拿出來, set就是把某個值放到對象中去。
比如:
public class LoginInfoBean {
private String time; //時間
private String ip; //IP
private String account; // 賬號
public String getTime() {
return time;
}
public void setTime(String time) {
this.time = time;
}
public String getIp() {
return ip;
}
public void setIp(String ip) {
this.ip = ip;
}
public String getAccount() {
return account;
}
public void setAccount(String account) {
this.account = account;
}
}
---------------------------------------------------------------
關於如何在servlet中取得數據:
首先要明白,我們提交到servlet的數據,需要走servlet的doGet或者doPost方法。
如果你不用框架,只用純粹的servlet,在servlet的doGet和doPost方法中因為只有兩個參數,也就是HttpRequest和HttpResponse,比如:
doPost(HttpServletRequest req,
HttpServletResponse resp){
........
}
按照以上的寫法,只能通過req.getParamter("xxx")取得;
比如下面這個例子:
file: login.jsp
<form id="loginform" name="loginform" method="post" action="LoginServlet" >
<input name="userName" type="text" id="userName" />
ps: 通過 action="LoginServlet" 可以知道,提交的路徑為LoginServlet, 然後會到web.xml中尋找關於LoginServlet 的具體配置,以確定是哪個servlet處理這個請求。
file: web.xml
<servlet>
<servlet-name>LoginServlet</servlet-name>
<servlet-class>com.test.LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/LoginServlet</url-pattern>
</servlet-mapping>
ps: 通過以上配置可以確定,處理這個請求的servlet為com.test.LoginServlet
file: com.test.LoginServlet.java
public void doPost(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
String name = request.getParameter("userName");
}
ps: 通過 request.getParameter("userName"); 就可以取得頁面上輸入的值。
如果用框架,每個框架的機制不一樣,需要分別對待, 但底層也都是servlet。我接觸過的struts1, struts2, 和spring MVC, 其中 struts1 給我們提供了一個formbean, 用於收集頁面的數據(就是上面那個javabean的問題); struts2和spring MVC 省去了formbean, 後台處理的action就是一個bean, 數據在action中直接可以取到。
推薦一個簡單的方法:寫get/set方法,OC有一個自動化的方法,即使用@proterty和@synthesize關鍵字
Person.h
8. java的get和set方法
set設置對象屬性值,get從對象屬性中獲取值get自然是取值 set 自然是設置值 這個是 java的 面向對象編程的一個特點直接GETSET用唄JAVA中有一個概念叫做封裝,封裝就是將對象一些自身的屬性封裝起來,隱藏起來,不讓外界任意訪問,如果你要讓外界訪問這個屬性你就要提供get和set方法。比如你叫張三,你的名字只有你一個人知道(私有屬性),別人問你叫什麼,你說出你的名字就調用了你的get方法,反之如果給你取名字調用的就是你的set方法,get和set方法不是一定要必須兩者都有,你可以根據實際情況而定。get方法是用來得到對象里屬性的值,set方法相反,是用來給對象的屬性設值的。get方法一般是得到成員變數的值,set是設置一個成員變數的值
9. JAVA中SET 和 GET 的用法
我來回答:
通常set 和 get是屬性的存取器,一般稱getter/setter。 set表示設置值,get表示獲取值。在Eclipse中先定義好欄位後,選擇Source/Generate Getters and Setters可以根據選擇自動生成這些方法,JBuilder中對應有BeanInfo的功能。
get方法返回的類型必須為該欄位對應的類型;
set方法返回的類型一般為void,但傳入的類型應為該欄位對應的類型。
所以,jawdat的寫法應該修改為:
public String getName() {}
public void setName(String name) {}