Java和是检查自定义用户定义方法的源代码的代码(请参阅程序中的代码)
正在寻找在java程序中显示用户创建的自定义方法的代码的方法。我想查看专门命名的定制java方法的代码。我不是在寻找查看java中内置的那些标准方法的代码的方法
在R中,很容易看到用户创建的函数的代码,或者查看许多内置函数的代码。只需输入函数名,后面不带括号。例如,从功能数据中显示的部分代码。框架如下图所示。java中应该有类似的特性,这似乎是合理的
data.frame
function (..., row.names = NULL, check.rows = FALSE, check.names = TRUE,
fix.empty.names = TRUE, stringsAsFactors = default.stringsAsFactors())
{
data.row.names <- if (check.rows && is.null(row.names))
function(current, new, i) {
if (is.character(current))
new <- as.character(new)
if (is.character(new))
current <- as.character(current)
if (anyDuplicated(new))
return(current)
if (is.null(current))
return(new)
if (all(current == new) || all(current == ""))
return(new)
stop(gettextf("mismatch of row names in arguments of 'data.frame', item %d",
i), domain = NA)
}
else function(current, new, i) {
if (is.null(current)) {
if (anyDuplicated(new)) {
warning(gettextf("some row.names duplicated: %s --> row.names NOT used",
paste(which(duplicated(new)), collapse = ",")),
domain = NA)
current
}
else new
}
else current
}
object <- as.list(substitute(list(...)))[-1L]
mirn <- missing(row.names)
mrn <- is.null(row.names)
x <- list(...)
n <- length(x)
if (n < 1L) {
if (!mrn) {
if (is.object(row.names) || !is.integer(row.names))
row.names <- as.character(row.names)
if (anyNA(row.names))
stop("row names contain missing values")
if (anyDuplicated(row.names))
stop(gettextf("duplicate row.names: %s", paste(unique(row.names[duplicated(row.names)]),
collapse = ", ")), domain = NA)
}
else row.names <- integer()
return(structure(list(), names = character(), row.names = row.names,
class = "data.frame"))
}
vnames <- names(x)
etc ...................
# 1 楼答案
你也可以看到其他人用Java编写的函数,但你必须通过源代码来实现。如果你有一个IDE,你应该有一个“显示声明”功能。例如,在IntelliJ中,只需按住ctrl键并单击一个方法调用,就会显示执行了什么代码
在R或例如Python中看到的特性更多地出现在可以解释的语言中。有了Jshell,即Java的REPL,您可以直接从REPL中看到Java文档,请参见https://cr.openjdk.java.net/~rfield/tutorial/JShellTutorial.html#tab-completion snippets