A. java中為什麼private方法有時候出現警告,而public方法卻不會
Java 中的 private 方法是只能在類內部被調用的方法,而 public 方法則可以被任何地方調用。因此,在 Java 編譯器中,private 方法比 public 方法更容易出現警告。
一般情況下,private 方法會被認為是在類內部使用的方法,因此如果一個 private 方法在類的外部被調用,編譯器就會給出警告。這是因為,如果一個 private 方法在類的外部被調用,那麼可能會導致安全問題或者其他不良的影響。
相比之下,public 方法是被認為是在類的外部使用的方法,因此如果局隱一個 public 方法在類的外部被調用,編譯器就不會給出大臘拿警告。
當然,這並不是絕對的規則。在一些情況下,public 方法也可能滾搭會引起警告。例如,如果一個 public 方法被其他類調用時,如果該方法的實現有安全問題或者其他不良的影響,編譯器也可能會給出警告。
B. java類裡面private xxxxx() {}有何用處
private xxxxx() {}中xxxxx應該是類名,而整個就是一個私有的默認(無參)構造器。私有構造器的用譽滲處就是限定只慶鋒脊能在本類內部創建類的對象,在類外不能通過私基耐有構造器來創建類的對象。
C. java中的private到底有什麼用
private是訪問控制修飾符,用來使用訪問控制符來保護對類、變數、方法和構造方法的訪問。
在程序中需要隱藏類的實現細節和保護類的數據時,就要使用private來修飾。例如:
public class Logger {
private String format;
public String getFormat() {
return this.format; }
public void setFormat(String format) {
this.format = format; }
}
實例中,Logger 類中的 format 變數為私有變數,所以其他類不能直接得到和設置該變數的值。為了使其他類能夠操作該變數,定義了兩個 public 方法:getFormat() (返回 format的值)和 setFormat(String)(設置 format 的值)。
(3)java類private擴展閱讀
1、private的訪問控制:
當前類:可見
同一包內:不可見
子孫類(同一包):不可見
子孫類(不同包):不可見
其他包:不可見
2、private的使用對象:變數、方法;不能修飾類(外部類)。
D. java中private什麼意思啊
java中private是訪問許可權符。私有的意思。
private在英文里是私人的意思.
眾所周知,JAVA是面向對象的一門語言,每個對象都有各自的屬性和方法.但是有的屬性涉及安全因素或秘密因素不能讓外面的程序調用,所以就用到了private,
經過它定義的變數只能在此對象內部調用,外部程序就無法調用,也就是說只能供其自身調用,比如某個人是一個對象,那麼他的血液就肯定是私有變數,只能供其自身調用來維持人的狀態.而如果將血液定義成public(公共的)的話,隨便其他人都可以改變他血液的狀態,你隨便把他的血液值設為逆流,那他不就掛了.
E. JAVA單鏈表中結點類用private修飾,怎麼用在鏈表類里
在Java單鏈表中,節點類通常包含兩個屬性:一個存儲數據的變數和一個指向下一個節點談兄皮的變數。為了保證數據的封裝性,通常會將這兩個屬性都用private修飾,然後提供對應的getter和setter方法含差來訪問和修改這些屬性。
下面是一個簡單的Java單鏈表節點類示例:
public class ListNode {
private int val;
private ListNode next;
public ListNode(int val) {
this.val = val;
}
public int getVal() {
return val;
}
public void setVal(int val) {
this.val = val;
}
public ListNode getNext() {
return next;
}
public void setNext(ListNode next) {
this.next = next;
}
}
在鏈表類中,我們需要創建一個頭節點來表示整個鏈表的起始位置。可以將鏈表類的定義如下:
public class LinkedList {
private ListNode head;
public LinkedList() {
this.head = null;
}
// 添加節點到鏈表尾部
public void addNode(int val) {
ListNode newNode = new ListNode(val);
if (head == null) {
head = newNode;
} else {
ListNode cur = head;
while (cur.getNext() != null) {
cur = cur.getNext();
}
cur.setNext(newNode);
}
}
// 遍歷鏈表並輸出節點值
public void traverse() {
ListNode cur = head;
while (cur != null) {
System.out.print(cur.getVal() + " ");
cur = cur.getNext();
}
System.out.println();
}
}
在鏈表類中,我們將head屬性也用private修飾,並提供對應的getter和setter方法來訪問和修改head屬性。在addNode方法中,我們首先判斷鏈表是否為空,如果為空,直接將新節點作為頭節點;否則,遍歷鏈表找到尾節點並將新節點接在其後面。在traverse方法中,我們遍歷整個鏈表並輸出每個節點的值。
使用時,可以創建一個新的LinkedList對象,然後調用其addNode方法添加節點,最後調塵和用traverse方法遍歷鏈表並輸出每個節點的值。例如:
public static void main(String[] args) {
LinkedList list = new LinkedList();
list.addNode(1);
list.addNode(2);
list.addNode(3);
list.traverse();
}
這段代碼會輸出:1 2 3。